{
  "type": "Program",
  "start": 0,
  "end": 33608,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 823,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 95,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 95
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 8,
          "end": 18,
          "loc": {
            "start": {
              "line": 1,
              "column": 8
            },
            "end": {
              "line": 1,
              "column": 18
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 8,
            "end": 18,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 18
              }
            },
            "name": "Expression"
          },
          "local": {
            "type": "Identifier",
            "start": 8,
            "end": 18,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 18
              }
            },
            "name": "Expression"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 20,
          "end": 29,
          "loc": {
            "start": {
              "line": 1,
              "column": 20
            },
            "end": {
              "line": 1,
              "column": 29
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 20,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 20
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Statement"
          },
          "local": {
            "type": "Identifier",
            "start": 20,
            "end": 29,
            "loc": {
              "start": {
                "line": 1,
                "column": 20
              },
              "end": {
                "line": 1,
                "column": 29
              }
            },
            "name": "Statement"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 31,
          "end": 41,
          "loc": {
            "start": {
              "line": 1,
              "column": 31
            },
            "end": {
              "line": 1,
              "column": 41
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 31,
            "end": 41,
            "loc": {
              "start": {
                "line": 1,
                "column": 31
              },
              "end": {
                "line": 1,
                "column": 41
              }
            },
            "name": "Statements"
          },
          "local": {
            "type": "Identifier",
            "start": 31,
            "end": 41,
            "loc": {
              "start": {
                "line": 1,
                "column": 31
              },
              "end": {
                "line": 1,
                "column": 41
              }
            },
            "name": "Statements"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 43,
          "end": 50,
          "loc": {
            "start": {
              "line": 1,
              "column": 43
            },
            "end": {
              "line": 1,
              "column": 50
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 43,
            "end": 50,
            "loc": {
              "start": {
                "line": 1,
                "column": 43
              },
              "end": {
                "line": 1,
                "column": 50
              }
            },
            "name": "parseTo"
          },
          "local": {
            "type": "Identifier",
            "start": 43,
            "end": 50,
            "loc": {
              "start": {
                "line": 1,
                "column": 43
              },
              "end": {
                "line": 1,
                "column": 50
              }
            },
            "name": "parseTo"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 52,
          "end": 64,
          "loc": {
            "start": {
              "line": 1,
              "column": 52
            },
            "end": {
              "line": 1,
              "column": 64
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 52,
            "end": 64,
            "loc": {
              "start": {
                "line": 1,
                "column": 52
              },
              "end": {
                "line": 1,
                "column": 64
              }
            },
            "name": "trackPromise"
          },
          "local": {
            "type": "Identifier",
            "start": 52,
            "end": 64,
            "loc": {
              "start": {
                "line": 1,
                "column": 52
              },
              "end": {
                "line": 1,
                "column": 64
              }
            },
            "name": "trackPromise"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 71,
        "end": 94,
        "loc": {
          "start": {
            "line": 1,
            "column": 71
          },
          "end": {
            "line": 1,
            "column": 94
          }
        },
        "value": "../sketcher/cchelpers",
        "rawValue": "../sketcher/cchelpers",
        "raw": "'../sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 96,
      "end": 149,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 53
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 104,
          "end": 118,
          "loc": {
            "start": {
              "line": 2,
              "column": 8
            },
            "end": {
              "line": 2,
              "column": 22
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 104,
            "end": 118,
            "loc": {
              "start": {
                "line": 2,
                "column": 8
              },
              "end": {
                "line": 2,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          },
          "local": {
            "type": "Identifier",
            "start": 104,
            "end": 118,
            "loc": {
              "start": {
                "line": 2,
                "column": 8
              },
              "end": {
                "line": 2,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 125,
        "end": 148,
        "loc": {
          "start": {
            "line": 2,
            "column": 29
          },
          "end": {
            "line": 2,
            "column": 52
          }
        },
        "value": "../sketcher/ccobjects",
        "rawValue": "../sketcher/ccobjects",
        "raw": "'../sketcher/ccobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 150,
      "end": 194,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 44
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 157,
          "end": 165,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 157,
            "end": 165,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 171,
        "end": 193,
        "loc": {
          "start": {
            "line": 3,
            "column": 21
          },
          "end": {
            "line": 3,
            "column": 43
          }
        },
        "value": "../sketcher/sketcher",
        "rawValue": "../sketcher/sketcher",
        "raw": "'../sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 195,
      "end": 243,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 48
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 202,
          "end": 212,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 17
            }
          },
          "local": {
            "type": "Identifier",
            "start": 202,
            "end": 212,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 17
              }
            },
            "name": "Constraint"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 218,
        "end": 242,
        "loc": {
          "start": {
            "line": 4,
            "column": 23
          },
          "end": {
            "line": 4,
            "column": 47
          }
        },
        "value": "../sketcher/constraint",
        "rawValue": "../sketcher/constraint",
        "raw": "'../sketcher/constraint'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 244,
      "end": 306,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 62
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 252,
          "end": 271,
          "loc": {
            "start": {
              "line": 5,
              "column": 8
            },
            "end": {
              "line": 5,
              "column": 27
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 252,
            "end": 271,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          },
          "local": {
            "type": "Identifier",
            "start": 252,
            "end": 271,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 278,
        "end": 305,
        "loc": {
          "start": {
            "line": 5,
            "column": 34
          },
          "end": {
            "line": 5,
            "column": 61
          }
        },
        "value": "../sketcher/constraintgen",
        "rawValue": "../sketcher/constraintgen",
        "raw": "'../sketcher/constraintgen'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 307,
      "end": 364,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 57
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 315,
          "end": 320,
          "loc": {
            "start": {
              "line": 6,
              "column": 8
            },
            "end": {
              "line": 6,
              "column": 13
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 315,
            "end": 320,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          },
          "local": {
            "type": "Identifier",
            "start": 315,
            "end": 320,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 322,
          "end": 326,
          "loc": {
            "start": {
              "line": 6,
              "column": 15
            },
            "end": {
              "line": 6,
              "column": 19
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 322,
            "end": 326,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          },
          "local": {
            "type": "Identifier",
            "start": 322,
            "end": 326,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 328,
          "end": 331,
          "loc": {
            "start": {
              "line": 6,
              "column": 21
            },
            "end": {
              "line": 6,
              "column": 24
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 328,
            "end": 331,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          },
          "local": {
            "type": "Identifier",
            "start": 328,
            "end": 331,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 338,
        "end": 363,
        "loc": {
          "start": {
            "line": 6,
            "column": 31
          },
          "end": {
            "line": 6,
            "column": 56
          }
        },
        "value": "../sketcher/geomobjects",
        "rawValue": "../sketcher/geomobjects",
        "raw": "'../sketcher/geomobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 365,
      "end": 404,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 39
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 372,
          "end": 379,
          "loc": {
            "start": {
              "line": 7,
              "column": 7
            },
            "end": {
              "line": 7,
              "column": 14
            }
          },
          "local": {
            "type": "Identifier",
            "start": 372,
            "end": 379,
            "loc": {
              "start": {
                "line": 7,
                "column": 7
              },
              "end": {
                "line": 7,
                "column": 14
              }
            },
            "name": "Object3"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 385,
        "end": 403,
        "loc": {
          "start": {
            "line": 7,
            "column": 20
          },
          "end": {
            "line": 7,
            "column": 38
          }
        },
        "value": "../three/object3",
        "rawValue": "../three/object3",
        "raw": "'../three/object3'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 405,
      "end": 437,
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 32
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 412,
          "end": 416,
          "loc": {
            "start": {
              "line": 8,
              "column": 7
            },
            "end": {
              "line": 8,
              "column": 11
            }
          },
          "local": {
            "type": "Identifier",
            "start": 412,
            "end": 416,
            "loc": {
              "start": {
                "line": 8,
                "column": 7
              },
              "end": {
                "line": 8,
                "column": 11
              }
            },
            "name": "View"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 422,
        "end": 436,
        "loc": {
          "start": {
            "line": 8,
            "column": 17
          },
          "end": {
            "line": 8,
            "column": 31
          }
        },
        "value": "../core/view",
        "rawValue": "../core/view",
        "raw": "'../core/view'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 438,
      "end": 464,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 445,
          "end": 450,
          "loc": {
            "start": {
              "line": 9,
              "column": 7
            },
            "end": {
              "line": 9,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 445,
            "end": 450,
            "loc": {
              "start": {
                "line": 9,
                "column": 7
              },
              "end": {
                "line": 9,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 456,
        "end": 463,
        "loc": {
          "start": {
            "line": 9,
            "column": 18
          },
          "end": {
            "line": 9,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 466,
      "end": 33555,
      "loc": {
        "start": {
          "line": 11,
          "column": 0
        },
        "end": {
          "line": 820,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 481,
        "end": 33555,
        "loc": {
          "start": {
            "line": 11,
            "column": 15
          },
          "end": {
            "line": 820,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 487,
          "end": 493,
          "loc": {
            "start": {
              "line": 11,
              "column": 21
            },
            "end": {
              "line": 11,
              "column": 27
            }
          },
          "name": "Sketch"
        },
        "superClass": {
          "type": "Identifier",
          "start": 502,
          "end": 516,
          "loc": {
            "start": {
              "line": 11,
              "column": 36
            },
            "end": {
              "line": 11,
              "column": 50
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 517,
          "end": 33555,
          "loc": {
            "start": {
              "line": 11,
              "column": 51
            },
            "end": {
              "line": 820,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 523,
              "end": 4100,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 82,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 523,
                "end": 534,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 4
                  },
                  "end": {
                    "line": 12,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 534,
                "end": 4100,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 15
                  },
                  "end": {
                    "line": 82,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 537,
                  "end": 4100,
                  "loc": {
                    "start": {
                      "line": 12,
                      "column": 18
                    },
                    "end": {
                      "line": 82,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 547,
                      "end": 555,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 8
                        },
                        "end": {
                          "line": 13,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 547,
                        "end": 554,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 8
                          },
                          "end": {
                            "line": 13,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 547,
                          "end": 552,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 8
                            },
                            "end": {
                              "line": 13,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set of objects added with addToSketch",
                          "start": 564,
                          "end": 604,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            564,
                            604
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 613,
                      "end": 648,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 613,
                        "end": 647,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 8
                          },
                          "end": {
                            "line": 15,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 613,
                          "end": 631,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 8
                            },
                            "end": {
                              "line": 15,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 613,
                            "end": 617,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 8
                              },
                              "end": {
                                "line": 15,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 618,
                            "end": 631,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 13
                              },
                              "end": {
                                "line": 15,
                                "column": 26
                              }
                            },
                            "name": "sketchObjects"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 634,
                          "end": 647,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 29
                            },
                            "end": {
                              "line": 15,
                              "column": 42
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 638,
                            "end": 645,
                            "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": 564,
                          "end": 604,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            564,
                            604
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "Note: should not be accessed by anyone accept Sketcher",
                          "start": 657,
                          "end": 713,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            657,
                            713
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 722,
                      "end": 829,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 722,
                        "end": 828,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 722,
                          "end": 746,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 722,
                            "end": 726,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 727,
                            "end": 746,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 13
                              },
                              "end": {
                                "line": 17,
                                "column": 32
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 749,
                          "end": 828,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 35
                            },
                            "end": {
                              "line": 17,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 753,
                            "end": 776,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 39
                              },
                              "end": {
                                "line": 17,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 753,
                              "end": 758,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 39
                                },
                                "end": {
                                  "line": 17,
                                  "column": 44
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 759,
                              "end": 776,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 45
                                },
                                "end": {
                                  "line": 17,
                                  "column": 62
                                }
                              },
                              "name": "MeshBasicMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 777,
                              "end": 827,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 63
                                },
                                "end": {
                                  "line": 17,
                                  "column": 113
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 778,
                                  "end": 793,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 79
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 778,
                                    "end": 783,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 69
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 785,
                                    "end": 793,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 79
                                      }
                                    },
                                    "value": 4144959,
                                    "rawValue": 4144959,
                                    "raw": "0x3f3f3f"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 795,
                                  "end": 810,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 96
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 795,
                                    "end": 804,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 90
                                      }
                                    },
                                    "name": "wireframe"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 806,
                                    "end": 810,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 96
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 812,
                                  "end": 826,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 112
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 812,
                                    "end": 819,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 105
                                      }
                                    },
                                    "name": "visible"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 821,
                                    "end": 826,
                                    "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": 657,
                          "end": 713,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            657,
                            713
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 838,
                      "end": 1074,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 15
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 838,
                        "end": 1073,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 14
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 838,
                          "end": 859,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 8
                            },
                            "end": {
                              "line": 18,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 838,
                            "end": 842,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 8
                              },
                              "end": {
                                "line": 18,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 843,
                            "end": 859,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 13
                              },
                              "end": {
                                "line": 18,
                                "column": 29
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 862,
                          "end": 1073,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 32
                            },
                            "end": {
                              "line": 22,
                              "column": 14
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 866,
                            "end": 889,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 36
                              },
                              "end": {
                                "line": 18,
                                "column": 59
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 866,
                              "end": 871,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 36
                                },
                                "end": {
                                  "line": 18,
                                  "column": 41
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 872,
                              "end": 889,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 42
                                },
                                "end": {
                                  "line": 18,
                                  "column": 59
                                }
                              },
                              "name": "MeshPhongMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 903,
                              "end": 1072,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 12
                                },
                                "end": {
                                  "line": 22,
                                  "column": 13
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 921,
                                  "end": 936,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 31
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 921,
                                    "end": 926,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 21
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 928,
                                    "end": 936,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 31
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 938,
                                  "end": 956,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 51
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 938,
                                    "end": 946,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 41
                                      }
                                    },
                                    "name": "emissive"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 948,
                                    "end": 956,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 51
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 958,
                                  "end": 976,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 71
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 958,
                                    "end": 966,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 61
                                      }
                                    },
                                    "name": "specular"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 968,
                                    "end": 976,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 71
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 978,
                                  "end": 990,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 85
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 978,
                                    "end": 987,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 82
                                      }
                                    },
                                    "name": "shininess"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 989,
                                    "end": 990,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 85
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1008,
                                  "end": 1025,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 33
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1008,
                                    "end": 1019,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 27
                                      }
                                    },
                                    "name": "transparent"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1021,
                                    "end": 1025,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 33
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1027,
                                  "end": 1039,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 47
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1027,
                                    "end": 1034,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 42
                                      }
                                    },
                                    "name": "opacity"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1036,
                                    "end": 1039,
                                    "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": 1041,
                                  "end": 1058,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 66
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1041,
                                    "end": 1051,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 59
                                      }
                                    },
                                    "name": "depthWrite"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1053,
                                    "end": 1058,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 66
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1083,
                      "end": 1169,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 94
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1083,
                        "end": 1168,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 93
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1083,
                          "end": 1093,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1083,
                            "end": 1087,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 8
                              },
                              "end": {
                                "line": 23,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1088,
                            "end": 1093,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 13
                              },
                              "end": {
                                "line": 23,
                                "column": 18
                              }
                            },
                            "name": "__box"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 1096,
                          "end": 1168,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 21
                            },
                            "end": {
                              "line": 23,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1100,
                            "end": 1110,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 25
                              },
                              "end": {
                                "line": 23,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1100,
                              "end": 1105,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 25
                                },
                                "end": {
                                  "line": 23,
                                  "column": 30
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1106,
                              "end": 1110,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 31
                                },
                                "end": {
                                  "line": 23,
                                  "column": 35
                                }
                              },
                              "name": "Mesh"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 1111,
                              "end": 1141,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 36
                                },
                                "end": {
                                  "line": 23,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1115,
                                "end": 1132,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1115,
                                  "end": 1120,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 45
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1121,
                                  "end": 1132,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 57
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 1133,
                                  "end": 1134,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 59
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1136,
                                  "end": 1137,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 62
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1139,
                                  "end": 1140,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 65
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            },
                            {
                              "type": "MemberExpression",
                              "start": 1143,
                              "end": 1167,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 68
                                },
                                "end": {
                                  "line": 23,
                                  "column": 92
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1143,
                                "end": 1147,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 72
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1148,
                                "end": 1167,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 92
                                  }
                                },
                                "name": "infiniteBoxMaterial"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1178,
                      "end": 1218,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 8
                        },
                        "end": {
                          "line": 24,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1178,
                        "end": 1217,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1178,
                          "end": 1191,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 8
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1178,
                            "end": 1182,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 8
                              },
                              "end": {
                                "line": 24,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1183,
                            "end": 1191,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 13
                              },
                              "end": {
                                "line": 24,
                                "column": 21
                              }
                            },
                            "name": "sketcher"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 1194,
                          "end": 1217,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1194,
                            "end": 1202,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 24
                              },
                              "end": {
                                "line": 24,
                                "column": 32
                              }
                            },
                            "name": "Sketcher"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1203,
                            "end": 1217,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 33
                              },
                              "end": {
                                "line": 24,
                                "column": 47
                              }
                            },
                            "name": "globalSketcher"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1219,
                          "end": 1252,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 49
                            },
                            "end": {
                              "line": 24,
                              "column": 82
                            }
                          },
                          "range": [
                            1219,
                            1252
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1261,
                      "end": 1327,
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1265,
                          "end": 1278,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 25
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1265,
                            "end": 1271,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 12
                              },
                              "end": {
                                "line": 25,
                                "column": 18
                              }
                            },
                            "name": "sketch",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 1274,
                            "end": 1278,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 21
                              },
                              "end": {
                                "line": 25,
                                "column": 25
                              }
                            }
                          },
                          "leadingComments": null
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1280,
                          "end": 1304,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 27
                            },
                            "end": {
                              "line": 25,
                              "column": 51
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1280,
                            "end": 1288,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 27
                              },
                              "end": {
                                "line": 25,
                                "column": 35
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1291,
                            "end": 1304,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 38
                              },
                              "end": {
                                "line": 25,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1291,
                              "end": 1295,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 38
                                },
                                "end": {
                                  "line": 25,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1296,
                              "end": 1304,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 43
                                },
                                "end": {
                                  "line": 25,
                                  "column": 51
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1306,
                          "end": 1326,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 53
                            },
                            "end": {
                              "line": 25,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1306,
                            "end": 1310,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 53
                              },
                              "end": {
                                "line": 25,
                                "column": 57
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1313,
                            "end": 1326,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 60
                              },
                              "end": {
                                "line": 25,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1313,
                              "end": 1321,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 60
                                },
                                "end": {
                                  "line": 25,
                                  "column": 68
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1322,
                              "end": 1326,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 69
                                },
                                "end": {
                                  "line": 25,
                                  "column": 73
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1219,
                          "end": 1252,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 49
                            },
                            "end": {
                              "line": 24,
                              "column": 82
                            }
                          },
                          "range": [
                            1219,
                            1252
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1336,
                      "end": 3228,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 63,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1336,
                        "end": 3227,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 8
                          },
                          "end": {
                            "line": 63,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1336,
                          "end": 1405,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 13
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 1336,
                            "end": 1402,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 8
                              },
                              "end": {
                                "line": 28,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1336,
                              "end": 1364,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 8
                                },
                                "end": {
                                  "line": 26,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1336,
                                "end": 1346,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 1336,
                                  "end": 1340,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1341,
                                  "end": 1346,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 18
                                    }
                                  },
                                  "name": "__box"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1347,
                                "end": 1364,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 36
                                  }
                                },
                                "name": "createInteraction"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 1365,
                                "end": 1401,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 1379,
                                    "end": 1390,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 23
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 1379,
                                      "end": 1387,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 20
                                        }
                                      },
                                      "name": "priority"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 1389,
                                      "end": 1390,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 23
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1403,
                            "end": 1405,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 11
                              },
                              "end": {
                                "line": 28,
                                "column": 13
                              }
                            },
                            "name": "on"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 1406,
                            "end": 3226,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 14
                              },
                              "end": {
                                "line": 63,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 1420,
                                "end": 1734,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1421,
                                  "end": 1455,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1421,
                                    "end": 1447,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1421,
                                      "end": 1435,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1421,
                                        "end": 1428,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1429,
                                        "end": 1435,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1436,
                                      "end": 1447,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 39
                                        }
                                      },
                                      "name": "Interaction"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1448,
                                    "end": 1455,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 47
                                      }
                                    },
                                    "name": "Clicked"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1456,
                                  "end": 1734,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 1457,
                                      "end": 1461,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 53
                                        }
                                      },
                                      "name": "data"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1463,
                                    "end": 1734,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "SwitchStatement",
                                        "start": 1481,
                                        "end": 1720,
                                        "loc": {
                                          "start": {
                                            "line": 30,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 17
                                          }
                                        },
                                        "discriminant": {
                                          "type": "MemberExpression",
                                          "start": 1489,
                                          "end": 1521,
                                          "loc": {
                                            "start": {
                                              "line": 30,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 30,
                                              "column": 56
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1489,
                                            "end": 1514,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1489,
                                              "end": 1506,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 41
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1489,
                                                "end": 1499,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1489,
                                                  "end": 1493,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 28
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1494,
                                                  "end": 1499,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1500,
                                                "end": 1506,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1507,
                                              "end": 1514,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 49
                                                }
                                              },
                                              "name": "mouseup"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1515,
                                            "end": 1521,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 56
                                              }
                                            },
                                            "name": "button"
                                          },
                                          "computed": false
                                        },
                                        "cases": [
                                          {
                                            "type": "SwitchCase",
                                            "start": 1545,
                                            "end": 1626,
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 101
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1553,
                                                "end": 1619,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 94
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1553,
                                                  "end": 1618,
                                                  "loc": {
                                                    "start": {
                                                      "line": 31,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 31,
                                                      "column": 93
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "Identifier",
                                                    "start": 1553,
                                                    "end": 1565,
                                                    "loc": {
                                                      "start": {
                                                        "line": 31,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 31,
                                                        "column": 40
                                                      }
                                                    },
                                                    "name": "trackPromise"
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "CallExpression",
                                                      "start": 1566,
                                                      "end": 1617,
                                                      "loc": {
                                                        "start": {
                                                          "line": 31,
                                                          "column": 41
                                                        },
                                                        "end": {
                                                          "line": 31,
                                                          "column": 92
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 1566,
                                                        "end": 1581,
                                                        "loc": {
                                                          "start": {
                                                            "line": 31,
                                                            "column": 41
                                                          },
                                                          "end": {
                                                            "line": 31,
                                                            "column": 56
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 1566,
                                                          "end": 1573,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 41
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 48
                                                            }
                                                          },
                                                          "name": "Promise"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 1574,
                                                          "end": 1581,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 49
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 56
                                                            }
                                                          },
                                                          "name": "resolve"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "CallExpression",
                                                          "start": 1582,
                                                          "end": 1616,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 57
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 91
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 1582,
                                                            "end": 1608,
                                                            "loc": {
                                                              "start": {
                                                                "line": 31,
                                                                "column": 57
                                                              },
                                                              "end": {
                                                                "line": 31,
                                                                "column": 83
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 1582,
                                                              "end": 1590,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 65
                                                                }
                                                              },
                                                              "name": "sketcher"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 1591,
                                                              "end": 1608,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 66
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 83
                                                                }
                                                              },
                                                              "name": "sketchAreaClicked"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 1609,
                                                              "end": 1615,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 84
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 90
                                                                }
                                                              },
                                                              "name": "sketch"
                                                            }
                                                          ]
                                                        }
                                                      ]
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1620,
                                                "end": 1626,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 95
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 101
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1550,
                                              "end": 1551,
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 26
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          },
                                          {
                                            "type": "SwitchCase",
                                            "start": 1647,
                                            "end": 1702,
                                            "loc": {
                                              "start": {
                                                "line": 32,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 32,
                                                "column": 75
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1655,
                                                "end": 1695,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 68
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1655,
                                                  "end": 1694,
                                                  "loc": {
                                                    "start": {
                                                      "line": 32,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 32,
                                                      "column": 67
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 1655,
                                                    "end": 1686,
                                                    "loc": {
                                                      "start": {
                                                        "line": 32,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 32,
                                                        "column": 59
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 1655,
                                                      "end": 1663,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 28
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 36
                                                        }
                                                      },
                                                      "name": "sketcher"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 1664,
                                                      "end": 1686,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 37
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 59
                                                        }
                                                      },
                                                      "name": "sketchAreaRightClicked"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 1687,
                                                      "end": 1693,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 60
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 66
                                                        }
                                                      },
                                                      "name": "sketch"
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1696,
                                                "end": 1702,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 75
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1652,
                                              "end": 1653,
                                              "loc": {
                                                "start": {
                                                  "line": 32,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 32,
                                                  "column": 26
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "Property",
                                "start": 1748,
                                "end": 3215,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1749,
                                  "end": 1782,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1749,
                                    "end": 1773,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1749,
                                      "end": 1763,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1749,
                                        "end": 1756,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1757,
                                        "end": 1763,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1764,
                                      "end": 1773,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 37
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1774,
                                    "end": 1782,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 46
                                      }
                                    },
                                    "name": "Rendered"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1783,
                                  "end": 3215,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 62,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1786,
                                    "end": 3215,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 62,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 1804,
                                        "end": 1870,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 37,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 1808,
                                          "end": 1841,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 53
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1808,
                                            "end": 1830,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1808,
                                              "end": 1816,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 28
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1817,
                                              "end": 1830,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 42
                                                }
                                              },
                                              "name": "currentSketch"
                                            },
                                            "computed": false
                                          },
                                          "operator": "!==",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 1835,
                                            "end": 1841,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 53
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1863,
                                          "end": 1870,
                                          "loc": {
                                            "start": {
                                              "line": 37,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 37,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 1887,
                                        "end": 1939,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 1891,
                                          "end": 1910,
                                          "loc": {
                                            "start": {
                                              "line": 38,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 38,
                                              "column": 39
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 1892,
                                            "end": 1910,
                                            "loc": {
                                              "start": {
                                                "line": 38,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 38,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1892,
                                              "end": 1902,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 1892,
                                                "end": 1896,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "view"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1897,
                                                "end": 1902,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "input"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1903,
                                              "end": 1910,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 39
                                                }
                                              },
                                              "name": "enabled"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1932,
                                          "end": 1939,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 1957,
                                        "end": 1993,
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 1957,
                                          "end": 1992,
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1957,
                                            "end": 1974,
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 33
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1957,
                                              "end": 1963,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 22
                                                }
                                              },
                                              "name": "sketch"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1964,
                                              "end": 1974,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 33
                                                }
                                              },
                                              "name": "updateGrid"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 1975,
                                              "end": 1991,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 50
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1975,
                                                "end": 1986,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1975,
                                                  "end": 1979,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1980,
                                                  "end": 1986,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "camera"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1987,
                                                "end": 1991,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 50
                                                  }
                                                },
                                                "name": "size"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2010,
                                        "end": 2071,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2014,
                                          "end": 2042,
                                          "loc": {
                                            "start": {
                                              "line": 42,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 42,
                                              "column": 48
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 2015,
                                            "end": 2042,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2015,
                                              "end": 2032,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 2015,
                                                "end": 2025,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2015,
                                                  "end": 2019,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2020,
                                                  "end": 2025,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 31
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2026,
                                                "end": 2032,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2033,
                                              "end": 2042,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 48
                                                }
                                              },
                                              "name": "mousemove"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 2064,
                                          "end": 2071,
                                          "loc": {
                                            "start": {
                                              "line": 43,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 43,
                                              "column": 27
                                            }
                                          },
                                          "argument": null,
                                          "leadingComments": null,
                                          "trailingComments": null
                                        },
                                        "alternate": null,
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 2072,
                                            "end": 2096,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2072,
                                              2096
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2113,
                                            "end": 2142,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2113,
                                              2142
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2159,
                                        "end": 2264,
                                        "loc": {
                                          "start": {
                                            "line": 45,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 45,
                                            "column": 121
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2163,
                                            "end": 2263,
                                            "loc": {
                                              "start": {
                                                "line": 45,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 45,
                                                "column": 120
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2163,
                                              "end": 2169,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 26
                                                }
                                              },
                                              "name": "point2",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 2172,
                                              "end": 2263,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 120
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2176,
                                                "end": 2189,
                                                "loc": {
                                                  "start": {
                                                    "line": 45,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 45,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2176,
                                                  "end": 2181,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2182,
                                                  "end": 2189,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2190,
                                                  "end": 2225,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 82
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2190,
                                                    "end": 2217,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 74
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2190,
                                                      "end": 2207,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 47
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 64
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2190,
                                                        "end": 2200,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 47
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 57
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2190,
                                                          "end": 2194,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 47
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 51
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2195,
                                                          "end": 2200,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 52
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 57
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2201,
                                                        "end": 2207,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 58
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 64
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2208,
                                                      "end": 2217,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 74
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2218,
                                                    "end": 2225,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 75
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 82
                                                      }
                                                    },
                                                    "name": "offsetX"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2227,
                                                  "end": 2262,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 119
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2227,
                                                    "end": 2254,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 84
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 111
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2227,
                                                      "end": 2244,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 84
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 101
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2227,
                                                        "end": 2237,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 84
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 94
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2227,
                                                          "end": 2231,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 84
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 88
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2232,
                                                          "end": 2237,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 89
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 94
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2238,
                                                        "end": 2244,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 95
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 101
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2245,
                                                      "end": 2254,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 102
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 111
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2255,
                                                    "end": 2262,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 112
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 119
                                                      }
                                                    },
                                                    "name": "offsetY"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 2072,
                                            "end": 2096,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2072,
                                              2096
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2113,
                                            "end": 2142,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2113,
                                              2142
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2281,
                                            "end": 2332,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2281,
                                              2332
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2349,
                                        "end": 2387,
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 54
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2353,
                                            "end": 2386,
                                            "loc": {
                                              "start": {
                                                "line": 47,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 47,
                                                "column": 53
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2353,
                                              "end": 2358,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 25
                                                }
                                              },
                                              "name": "line3",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2361,
                                              "end": 2386,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 53
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2361,
                                                "end": 2378,
                                                "loc": {
                                                  "start": {
                                                    "line": 47,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 47,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2361,
                                                  "end": 2365,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2366,
                                                  "end": 2378,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "getViewLine3"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2379,
                                                  "end": 2385,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 52
                                                    }
                                                  },
                                                  "name": "point2"
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2281,
                                            "end": 2332,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2281,
                                              2332
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2404,
                                            "end": 2448,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2404,
                                              2448
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2465,
                                        "end": 2535,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 86
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2469,
                                            "end": 2534,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 85
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2469,
                                              "end": 2481,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 32
                                                }
                                              },
                                              "name": "worldToLocal",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2484,
                                              "end": 2534,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 85
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2484,
                                                "end": 2514,
                                                "loc": {
                                                  "start": {
                                                    "line": 49,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 49,
                                                    "column": 65
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 2484,
                                                  "end": 2503,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 2488,
                                                    "end": 2501,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2488,
                                                      "end": 2493,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "THREE"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2494,
                                                      "end": 2501,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "Matrix4"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2504,
                                                  "end": 2514,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 65
                                                    }
                                                  },
                                                  "name": "getInverse"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2515,
                                                  "end": 2533,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 66
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 84
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2515,
                                                    "end": 2521,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 66
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketch"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2522,
                                                    "end": 2533,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 73
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 84
                                                      }
                                                    },
                                                    "name": "matrixWorld"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2404,
                                            "end": 2448,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2404,
                                              2448
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2552,
                                        "end": 2585,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 2552,
                                          "end": 2584,
                                          "loc": {
                                            "start": {
                                              "line": 50,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 50,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 2552,
                                            "end": 2570,
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2552,
                                              "end": 2557,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 21
                                                }
                                              },
                                              "name": "line3"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2558,
                                              "end": 2570,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 34
                                                }
                                              },
                                              "name": "applyMatrix4"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 2571,
                                              "end": 2583,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 47
                                                }
                                              },
                                              "name": "worldToLocal"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "calculate intersection of line with z = 0 plane",
                                            "start": 2602,
                                            "end": 2651,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2602,
                                              2651
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2668,
                                        "end": 2732,
                                        "loc": {
                                          "start": {
                                            "line": 52,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 52,
                                            "column": 80
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2672,
                                            "end": 2731,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 79
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2672,
                                              "end": 2677,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 25
                                                }
                                              },
                                              "name": "param",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "BinaryExpression",
                                              "start": 2680,
                                              "end": 2731,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 79
                                                }
                                              },
                                              "left": {
                                                "type": "BinaryExpression",
                                                "start": 2681,
                                                "end": 2698,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 46
                                                  }
                                                },
                                                "left": {
                                                  "type": "Literal",
                                                  "start": 2681,
                                                  "end": 2682,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 30
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2685,
                                                  "end": 2698,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2685,
                                                    "end": 2696,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 44
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2685,
                                                      "end": 2690,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 33
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2691,
                                                      "end": 2696,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2697,
                                                    "end": 2698,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "BinaryExpression",
                                                "start": 2703,
                                                "end": 2730,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 78
                                                  }
                                                },
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 2703,
                                                  "end": 2714,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2703,
                                                    "end": 2712,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 60
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2703,
                                                      "end": 2708,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 56
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2709,
                                                      "end": 2712,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 57
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "end"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2713,
                                                    "end": 2714,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 62
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2717,
                                                  "end": 2730,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2717,
                                                    "end": 2728,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2717,
                                                      "end": 2722,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2723,
                                                      "end": 2728,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 71
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 76
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2729,
                                                    "end": 2730,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 77
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 78
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              }
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "var",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "calculate intersection of line with z = 0 plane",
                                            "start": 2602,
                                            "end": 2651,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2602,
                                              2651
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2749,
                                        "end": 2783,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 50
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2753,
                                            "end": 2782,
                                            "loc": {
                                              "start": {
                                                "line": 53,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 49
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2753,
                                              "end": 2764,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 31
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2767,
                                              "end": 2782,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 49
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2767,
                                                "end": 2775,
                                                "loc": {
                                                  "start": {
                                                    "line": 53,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 53,
                                                    "column": 42
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2767,
                                                  "end": 2772,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "line3"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2773,
                                                  "end": 2775,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "at"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2776,
                                                  "end": 2781,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 48
                                                    }
                                                  },
                                                  "name": "param"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "let"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2800,
                                        "end": 2818,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 34
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2800,
                                          "end": 2817,
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 54,
                                              "column": 33
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2800,
                                            "end": 2813,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2800,
                                              "end": 2811,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 27
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2812,
                                              "end": 2813,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 29
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 2816,
                                            "end": 2817,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 33
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2820,
                                            "end": 2847,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2820,
                                              2847
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2864,
                                            "end": 2901,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2864,
                                              2901
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2918,
                                        "end": 3165,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 60,
                                            "column": 17
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2922,
                                          "end": 2973,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 71
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 2923,
                                            "end": 2973,
                                            "loc": {
                                              "start": {
                                                "line": 56,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 56,
                                                "column": 71
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 2923,
                                              "end": 2941,
                                              "loc": {
                                                "start": {
                                                  "line": 56,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 56,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2923,
                                                "end": 2934,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 32
                                                  }
                                                },
                                                "name": "sketchPoint",
                                                "leadingComments": null
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2935,
                                                "end": 2941,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "equals"
                                              },
                                              "computed": false,
                                              "leadingComments": null
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 2942,
                                                "end": 2972,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 70
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2942,
                                                  "end": 2955,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 53
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2942,
                                                    "end": 2950,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 48
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2951,
                                                    "end": 2955,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 53
                                                      }
                                                    },
                                                    "name": "data"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2956,
                                                  "end": 2972,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 70
                                                    }
                                                  },
                                                  "name": "interactionPoint"
                                                },
                                                "computed": false
                                              }
                                            ],
                                            "leadingComments": null
                                          },
                                          "leadingComments": null
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 2975,
                                          "end": 3165,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 60,
                                              "column": 17
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3050,
                                              "end": 3099,
                                              "loc": {
                                                "start": {
                                                  "line": 58,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 58,
                                                  "column": 69
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3050,
                                                "end": 3098,
                                                "loc": {
                                                  "start": {
                                                    "line": 58,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 58,
                                                    "column": 68
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3050,
                                                  "end": 3085,
                                                  "loc": {
                                                    "start": {
                                                      "line": 58,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 58,
                                                      "column": 55
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 3050,
                                                    "end": 3080,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 50
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 3050,
                                                      "end": 3063,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 33
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 3050,
                                                        "end": 3058,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 28
                                                          }
                                                        },
                                                        "name": "sketcher",
                                                        "leadingComments": null
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 3059,
                                                        "end": 3063,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 29
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 33
                                                          }
                                                        },
                                                        "name": "data"
                                                      },
                                                      "computed": false,
                                                      "leadingComments": null
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 3064,
                                                      "end": 3080,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 34
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 50
                                                        }
                                                      },
                                                      "name": "interactionPoint"
                                                    },
                                                    "computed": false,
                                                    "leadingComments": null
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3081,
                                                    "end": 3085,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 55
                                                      }
                                                    },
                                                    "name": "copy"
                                                  },
                                                  "computed": false,
                                                  "leadingComments": null
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 3086,
                                                    "end": 3097,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 67
                                                      }
                                                    },
                                                    "name": "sketchPoint"
                                                  }
                                                ],
                                                "leadingComments": null
                                              },
                                              "leadingComments": [
                                                {
                                                  "type": "CommentLine",
                                                  "value": "TODO: await mouseMove handler?",
                                                  "start": 2997,
                                                  "end": 3029,
                                                  "loc": {
                                                    "start": {
                                                      "line": 57,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 57,
                                                      "column": 52
                                                    }
                                                  },
                                                  "range": [
                                                    2997,
                                                    3029
                                                  ]
                                                }
                                              ]
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3120,
                                              "end": 3147,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3120,
                                                "end": 3146,
                                                "loc": {
                                                  "start": {
                                                    "line": 59,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 59,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3120,
                                                  "end": 3144,
                                                  "loc": {
                                                    "start": {
                                                      "line": 59,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 59,
                                                      "column": 44
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 3120,
                                                    "end": 3128,
                                                    "loc": {
                                                      "start": {
                                                        "line": 59,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 59,
                                                        "column": 28
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3129,
                                                    "end": 3144,
                                                    "loc": {
                                                      "start": {
                                                        "line": 59,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 59,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "setActionCursor"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null,
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2820,
                                            "end": 2847,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2820,
                                              2847
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2864,
                                            "end": 2901,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2864,
                                              2901
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 3182,
                                        "end": 3201,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 35
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 3182,
                                          "end": 3200,
                                          "loc": {
                                            "start": {
                                              "line": 61,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 61,
                                              "column": 34
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 3182,
                                            "end": 3198,
                                            "loc": {
                                              "start": {
                                                "line": 61,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 61,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 3182,
                                              "end": 3190,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 24
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3191,
                                              "end": 3198,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 32
                                                }
                                              },
                                              "name": "refresh"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3238,
                      "end": 3345,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3238,
                        "end": 3344,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 8
                          },
                          "end": {
                            "line": 65,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3238,
                          "end": 3249,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 65,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3238,
                            "end": 3242,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 8
                              },
                              "end": {
                                "line": 65,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3243,
                            "end": 3249,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 13
                              },
                              "end": {
                                "line": 65,
                                "column": 19
                              }
                            },
                            "name": "__grid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3252,
                          "end": 3344,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 22
                            },
                            "end": {
                              "line": 65,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3256,
                            "end": 3274,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 26
                              },
                              "end": {
                                "line": 65,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3256,
                              "end": 3261,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 26
                                },
                                "end": {
                                  "line": 65,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3262,
                              "end": 3274,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 32
                                },
                                "end": {
                                  "line": 65,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3275,
                              "end": 3295,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 45
                                },
                                "end": {
                                  "line": 65,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3279,
                                "end": 3293,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3279,
                                  "end": 3284,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3285,
                                  "end": 3293,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3297,
                              "end": 3343,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 67
                                },
                                "end": {
                                  "line": 65,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3301,
                                "end": 3324,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3301,
                                  "end": 3306,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3307,
                                  "end": 3324,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3325,
                                  "end": 3342,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3326,
                                      "end": 3341,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3326,
                                        "end": 3331,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3333,
                                        "end": 3341,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 111
                                          }
                                        },
                                        "value": 5263440,
                                        "rawValue": 5263440,
                                        "raw": "0x505050"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3354,
                      "end": 3461,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3354,
                        "end": 3460,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 8
                          },
                          "end": {
                            "line": 66,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3354,
                          "end": 3365,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 8
                            },
                            "end": {
                              "line": 66,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3354,
                            "end": 3358,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 8
                              },
                              "end": {
                                "line": 66,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3359,
                            "end": 3365,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 13
                              },
                              "end": {
                                "line": 66,
                                "column": 19
                              }
                            },
                            "name": "__axis"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3368,
                          "end": 3460,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 22
                            },
                            "end": {
                              "line": 66,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3372,
                            "end": 3390,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 26
                              },
                              "end": {
                                "line": 66,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3372,
                              "end": 3377,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 26
                                },
                                "end": {
                                  "line": 66,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3378,
                              "end": 3390,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 32
                                },
                                "end": {
                                  "line": 66,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3391,
                              "end": 3411,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 45
                                },
                                "end": {
                                  "line": 66,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3395,
                                "end": 3409,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3395,
                                  "end": 3400,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3401,
                                  "end": 3409,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3413,
                              "end": 3459,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 67
                                },
                                "end": {
                                  "line": 66,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3417,
                                "end": 3440,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3417,
                                  "end": 3422,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3423,
                                  "end": 3440,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3441,
                                  "end": 3458,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3442,
                                      "end": 3457,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3442,
                                        "end": 3447,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3449,
                                        "end": 3457,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 111
                                          }
                                        },
                                        "value": 16711680,
                                        "rawValue": 16711680,
                                        "raw": "0xff0000"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "lines are sometimes incorrectly frustum culled, so let webgl handle this",
                          "start": 3470,
                          "end": 3544,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3470,
                            3544
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3553,
                      "end": 3587,
                      "loc": {
                        "start": {
                          "line": 68,
                          "column": 8
                        },
                        "end": {
                          "line": 68,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3553,
                        "end": 3586,
                        "loc": {
                          "start": {
                            "line": 68,
                            "column": 8
                          },
                          "end": {
                            "line": 68,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3553,
                          "end": 3578,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 8
                            },
                            "end": {
                              "line": 68,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3553,
                            "end": 3564,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 8
                              },
                              "end": {
                                "line": 68,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3553,
                              "end": 3557,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 8
                                },
                                "end": {
                                  "line": 68,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3558,
                              "end": 3564,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 13
                                },
                                "end": {
                                  "line": 68,
                                  "column": 19
                                }
                              },
                              "name": "__grid"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3565,
                            "end": 3578,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 20
                              },
                              "end": {
                                "line": 68,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3581,
                          "end": 3586,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 36
                            },
                            "end": {
                              "line": 68,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "lines are sometimes incorrectly frustum culled, so let webgl handle this",
                          "start": 3470,
                          "end": 3544,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3470,
                            3544
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3596,
                      "end": 3630,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 8
                        },
                        "end": {
                          "line": 69,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3596,
                        "end": 3629,
                        "loc": {
                          "start": {
                            "line": 69,
                            "column": 8
                          },
                          "end": {
                            "line": 69,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3596,
                          "end": 3621,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 8
                            },
                            "end": {
                              "line": 69,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3596,
                            "end": 3607,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 8
                              },
                              "end": {
                                "line": 69,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3596,
                              "end": 3600,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 8
                                },
                                "end": {
                                  "line": 69,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3601,
                              "end": 3607,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 13
                                },
                                "end": {
                                  "line": 69,
                                  "column": 19
                                }
                              },
                              "name": "__axis"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3608,
                            "end": 3621,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 20
                              },
                              "end": {
                                "line": 69,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3624,
                          "end": 3629,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 36
                            },
                            "end": {
                              "line": 69,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3640,
                      "end": 3681,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 8
                        },
                        "end": {
                          "line": 71,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3640,
                        "end": 3680,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 8
                          },
                          "end": {
                            "line": 71,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3640,
                          "end": 3657,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 8
                            },
                            "end": {
                              "line": 71,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3640,
                            "end": 3644,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 8
                              },
                              "end": {
                                "line": 71,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3645,
                            "end": 3657,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 13
                              },
                              "end": {
                                "line": 71,
                                "column": 25
                              }
                            },
                            "name": "__dimensions"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3660,
                          "end": 3680,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 28
                            },
                            "end": {
                              "line": 71,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3664,
                            "end": 3678,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 32
                              },
                              "end": {
                                "line": 71,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3664,
                              "end": 3669,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 32
                                },
                                "end": {
                                  "line": 71,
                                  "column": 37
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3670,
                              "end": 3678,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 38
                                },
                                "end": {
                                  "line": 71,
                                  "column": 46
                                }
                              },
                              "name": "Object3D"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3691,
                          "end": 3712,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3691,
                            3712
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3721,
                      "end": 3740,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3721,
                        "end": 3739,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3721,
                          "end": 3735,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3721,
                            "end": 3725,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3726,
                            "end": 3735,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 13
                              },
                              "end": {
                                "line": 74,
                                "column": 22
                              }
                            },
                            "name": "gridScale"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3738,
                          "end": 3739,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 25
                            },
                            "end": {
                              "line": 74,
                              "column": 26
                            }
                          },
                          "value": 4,
                          "rawValue": 4,
                          "raw": "4"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3691,
                          "end": 3712,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3691,
                            3712
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3741,
                          "end": 3777,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3741,
                            3777
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3786,
                      "end": 3807,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3786,
                        "end": 3806,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3786,
                          "end": 3799,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3786,
                            "end": 3790,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3791,
                            "end": 3799,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 13
                              },
                              "end": {
                                "line": 75,
                                "column": 21
                              }
                            },
                            "name": "gridSize"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3802,
                          "end": 3806,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 24
                            },
                            "end": {
                              "line": 75,
                              "column": 28
                            }
                          },
                          "value": 1000,
                          "rawValue": 1000,
                          "raw": "1000"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3741,
                          "end": 3777,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3741,
                            3777
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3816,
                      "end": 3846,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 8
                        },
                        "end": {
                          "line": 76,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3816,
                        "end": 3845,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 76,
                            "column": 37
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3816,
                          "end": 3839,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3816,
                            "end": 3820,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3821,
                            "end": 3839,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 13
                              },
                              "end": {
                                "line": 76,
                                "column": 31
                              }
                            },
                            "name": "snappingSizeInGrid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3842,
                          "end": 3845,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 34
                            },
                            "end": {
                              "line": 76,
                              "column": 37
                            }
                          },
                          "value": 0.1,
                          "rawValue": 0.1,
                          "raw": "0.1"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3847,
                          "end": 3871,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3847,
                            3871
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3880,
                      "end": 3924,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 77,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3880,
                        "end": 3923,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 8
                          },
                          "end": {
                            "line": 77,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3880,
                          "end": 3900,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3880,
                            "end": 3884,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3885,
                            "end": 3900,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 13
                              },
                              "end": {
                                "line": 77,
                                "column": 28
                              }
                            },
                            "name": "pointSizeInGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 3903,
                          "end": 3923,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 31
                            },
                            "end": {
                              "line": 77,
                              "column": 51
                            }
                          },
                          "left": {
                            "type": "Literal",
                            "start": 3903,
                            "end": 3906,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 31
                              },
                              "end": {
                                "line": 77,
                                "column": 34
                              }
                            },
                            "value": 0.1,
                            "rawValue": 0.1,
                            "raw": "0.1"
                          },
                          "operator": "/",
                          "right": {
                            "type": "MemberExpression",
                            "start": 3909,
                            "end": 3923,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 37
                              },
                              "end": {
                                "line": 77,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3909,
                              "end": 3913,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 37
                                },
                                "end": {
                                  "line": 77,
                                  "column": 41
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3914,
                              "end": 3923,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 42
                                },
                                "end": {
                                  "line": 77,
                                  "column": 51
                                }
                              },
                              "name": "gridScale"
                            },
                            "computed": false
                          }
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3847,
                          "end": 3871,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3847,
                            3871
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3925,
                          "end": 3949,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            3925,
                            3949
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3958,
                      "end": 3987,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 8
                        },
                        "end": {
                          "line": 78,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3958,
                        "end": 3986,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3958,
                          "end": 3980,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3958,
                            "end": 3962,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 8
                              },
                              "end": {
                                "line": 78,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3963,
                            "end": 3980,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 13
                              },
                              "end": {
                                "line": 78,
                                "column": 30
                              }
                            },
                            "name": "chosenItemOpacity"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3983,
                          "end": 3986,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 33
                            },
                            "end": {
                              "line": 78,
                              "column": 36
                            }
                          },
                          "value": 0.5,
                          "rawValue": 0.5,
                          "raw": "0.5"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3925,
                          "end": 3949,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            3925,
                            3949
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 3997,
                          "end": 4067,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            3997,
                            4067
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4076,
                      "end": 4094,
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 8
                        },
                        "end": {
                          "line": 81,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4076,
                        "end": 4093,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 8
                          },
                          "end": {
                            "line": 81,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4076,
                          "end": 4091,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4076,
                            "end": 4080,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4081,
                            "end": 4091,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 13
                              },
                              "end": {
                                "line": 81,
                                "column": 23
                              }
                            },
                            "name": "updateGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 3997,
                          "end": 4067,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            3997,
                            4067
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4106,
              "end": 4267,
              "loc": {
                "start": {
                  "line": 84,
                  "column": 4
                },
                "end": {
                  "line": 90,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4113,
                "end": 4125,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 11
                  },
                  "end": {
                    "line": 84,
                    "column": 23
                  }
                },
                "name": "FindSketchOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4125,
                "end": 4267,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 23
                  },
                  "end": {
                    "line": 90,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4126,
                    "end": 4129,
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 24
                      },
                      "end": {
                        "line": 84,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4131,
                  "end": 4267,
                  "loc": {
                    "start": {
                      "line": 84,
                      "column": 29
                    },
                    "end": {
                      "line": 90,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "WhileStatement",
                      "start": 4141,
                      "end": 4261,
                      "loc": {
                        "start": {
                          "line": 85,
                          "column": 8
                        },
                        "end": {
                          "line": 89,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 4148,
                        "end": 4151,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 15
                          },
                          "end": {
                            "line": 85,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 4153,
                        "end": 4261,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 20
                          },
                          "end": {
                            "line": 89,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 4167,
                            "end": 4221,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 12
                              },
                              "end": {
                                "line": 87,
                                "column": 27
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 4171,
                              "end": 4192,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 16
                                },
                                "end": {
                                  "line": 86,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4171,
                                "end": 4174,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 19
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 4186,
                                "end": 4192,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 37
                                  }
                                },
                                "name": "Sketch"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 4210,
                              "end": 4221,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 16
                                },
                                "end": {
                                  "line": 87,
                                  "column": 27
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4217,
                                "end": 4220,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 4234,
                            "end": 4251,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 12
                              },
                              "end": {
                                "line": 88,
                                "column": 29
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4234,
                              "end": 4250,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 12
                                },
                                "end": {
                                  "line": 88,
                                  "column": 28
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4234,
                                "end": 4237,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 15
                                  }
                                },
                                "name": "obj"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 4240,
                                "end": 4250,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4240,
                                  "end": 4243,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4244,
                                  "end": 4250,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 28
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4273,
              "end": 4452,
              "loc": {
                "start": {
                  "line": 92,
                  "column": 4
                },
                "end": {
                  "line": 98,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4280,
                "end": 4295,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 11
                  },
                  "end": {
                    "line": 92,
                    "column": 26
                  }
                },
                "name": "FindSketchSetOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4295,
                "end": 4452,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 26
                  },
                  "end": {
                    "line": 98,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4296,
                    "end": 4299,
                    "loc": {
                      "start": {
                        "line": 92,
                        "column": 27
                      },
                      "end": {
                        "line": 92,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4301,
                  "end": 4452,
                  "loc": {
                    "start": {
                      "line": 92,
                      "column": 32
                    },
                    "end": {
                      "line": 98,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4311,
                      "end": 4322,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 8
                        },
                        "end": {
                          "line": 93,
                          "column": 19
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4315,
                          "end": 4321,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 12
                            },
                            "end": {
                              "line": 93,
                              "column": 18
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4315,
                            "end": 4321,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 12
                              },
                              "end": {
                                "line": 93,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": null
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4331,
                      "end": 4423,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 96,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4331,
                        "end": 4422,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 96,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4331,
                          "end": 4352,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4331,
                            "end": 4334,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 8
                              },
                              "end": {
                                "line": 94,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4335,
                            "end": 4352,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 94,
                                "column": 29
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 4353,
                            "end": 4421,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 30
                              },
                              "end": {
                                "line": 96,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 4353,
                                "end": 4354,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 31
                                  }
                                },
                                "name": "s"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 4358,
                              "end": 4421,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 35
                                },
                                "end": {
                                  "line": 96,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4372,
                                  "end": 4411,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4372,
                                    "end": 4410,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 50
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4372,
                                      "end": 4378,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 18
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "right": {
                                      "type": "LogicalExpression",
                                      "start": 4381,
                                      "end": 4410,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 50
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 4381,
                                        "end": 4387,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 27
                                          }
                                        },
                                        "name": "result"
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 4391,
                                        "end": 4410,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4391,
                                          "end": 4400,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4391,
                                            "end": 4392,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 32
                                              }
                                            },
                                            "name": "s"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4393,
                                            "end": 4400,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 40
                                              }
                                            },
                                            "name": "members"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4401,
                                          "end": 4410,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 50
                                            }
                                          },
                                          "name": "SketchSet"
                                        },
                                        "computed": false
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4432,
                      "end": 4446,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 97,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4439,
                        "end": 4445,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 15
                          },
                          "end": {
                            "line": 97,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4458,
              "end": 4535,
              "loc": {
                "start": {
                  "line": 100,
                  "column": 4
                },
                "end": {
                  "line": 102,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4458,
                "end": 4465,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 11
                  }
                },
                "name": "getPart"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4465,
                "end": 4535,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 11
                  },
                  "end": {
                    "line": 102,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4468,
                  "end": 4535,
                  "loc": {
                    "start": {
                      "line": 100,
                      "column": 14
                    },
                    "end": {
                      "line": 102,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4478,
                      "end": 4504,
                      "loc": {
                        "start": {
                          "line": 101,
                          "column": 8
                        },
                        "end": {
                          "line": 101,
                          "column": 34
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4485,
                        "end": 4503,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 15
                          },
                          "end": {
                            "line": 101,
                            "column": 33
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4485,
                          "end": 4496,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 15
                            },
                            "end": {
                              "line": 101,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4485,
                            "end": 4489,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 15
                              },
                              "end": {
                                "line": 101,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4490,
                            "end": 4496,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 20
                              },
                              "end": {
                                "line": 101,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4497,
                          "end": 4503,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 27
                            },
                            "end": {
                              "line": 101,
                              "column": 33
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Part.SketchSet.Sketch",
                          "start": 4505,
                          "end": 4529,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 35
                            },
                            "end": {
                              "line": 101,
                              "column": 59
                            }
                          },
                          "range": [
                            4505,
                            4529
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4541,
                  "end": 4610,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4541,
                    4610
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4615,
                  "end": 4717,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4615,
                    4717
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4722,
                  "end": 4742,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4722,
                    4742
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4747,
                  "end": 4818,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4747,
                    4818
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4823,
                  "end": 4889,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4823,
                    4889
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4894,
                  "end": 4995,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    4894,
                    4995
                  ]
                },
                {
                  "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": 5000,
                  "end": 5145,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    5000,
                    5145
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5150,
              "end": 7096,
              "loc": {
                "start": {
                  "line": 111,
                  "column": 4
                },
                "end": {
                  "line": 154,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5150,
                "end": 5161,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 4
                  },
                  "end": {
                    "line": 111,
                    "column": 15
                  }
                },
                "name": "addToSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5161,
                "end": 7096,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 15
                  },
                  "end": {
                    "line": 154,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5162,
                    "end": 5169,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 16
                      },
                      "end": {
                        "line": 111,
                        "column": 23
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 5171,
                    "end": 5183,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 25
                      },
                      "end": {
                        "line": 111,
                        "column": 37
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 5171,
                      "end": 5178,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 25
                        },
                        "end": {
                          "line": 111,
                          "column": 32
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 5181,
                      "end": 5183,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 35
                        },
                        "end": {
                          "line": 111,
                          "column": 37
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5185,
                  "end": 7096,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 39
                    },
                    "end": {
                      "line": 154,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5195,
                      "end": 5255,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5199,
                        "end": 5229,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 12
                          },
                          "end": {
                            "line": 112,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5199,
                          "end": 5215,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 12
                            },
                            "end": {
                              "line": 112,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5199,
                            "end": 5206,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5207,
                            "end": 5215,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 20
                              },
                              "end": {
                                "line": 112,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5220,
                          "end": 5229,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 33
                            },
                            "end": {
                              "line": 112,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5231,
                        "end": 5255,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 44
                          },
                          "end": {
                            "line": 112,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5231,
                          "end": 5254,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 44
                            },
                            "end": {
                              "line": 112,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5231,
                            "end": 5247,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 44
                              },
                              "end": {
                                "line": 112,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5231,
                              "end": 5238,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 44
                                },
                                "end": {
                                  "line": 112,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5239,
                              "end": 5247,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 52
                                },
                                "end": {
                                  "line": 112,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5250,
                            "end": 5254,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 63
                              },
                              "end": {
                                "line": 112,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5264,
                      "end": 5324,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5268,
                        "end": 5298,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 12
                          },
                          "end": {
                            "line": 113,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5268,
                          "end": 5284,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 12
                            },
                            "end": {
                              "line": 113,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5268,
                            "end": 5275,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 12
                              },
                              "end": {
                                "line": 113,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5276,
                            "end": 5284,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 20
                              },
                              "end": {
                                "line": 113,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5289,
                          "end": 5298,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 33
                            },
                            "end": {
                              "line": 113,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5300,
                        "end": 5324,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 44
                          },
                          "end": {
                            "line": 113,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5300,
                          "end": 5323,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 44
                            },
                            "end": {
                              "line": 113,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5300,
                            "end": 5316,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 44
                              },
                              "end": {
                                "line": 113,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5300,
                              "end": 5307,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 44
                                },
                                "end": {
                                  "line": 113,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5308,
                              "end": 5316,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 52
                                },
                                "end": {
                                  "line": 113,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5319,
                            "end": 5323,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 63
                              },
                              "end": {
                                "line": 113,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5333,
                      "end": 5402,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5337,
                        "end": 5371,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 12
                          },
                          "end": {
                            "line": 114,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5337,
                          "end": 5357,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 12
                            },
                            "end": {
                              "line": 114,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5337,
                            "end": 5344,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 12
                              },
                              "end": {
                                "line": 114,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5345,
                            "end": 5357,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 20
                              },
                              "end": {
                                "line": 114,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5362,
                          "end": 5371,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 37
                            },
                            "end": {
                              "line": 114,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5373,
                        "end": 5402,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 48
                          },
                          "end": {
                            "line": 114,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5373,
                          "end": 5401,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 48
                            },
                            "end": {
                              "line": 114,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5373,
                            "end": 5393,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 48
                              },
                              "end": {
                                "line": 114,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5373,
                              "end": 5380,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 48
                                },
                                "end": {
                                  "line": 114,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5381,
                              "end": 5393,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 56
                                },
                                "end": {
                                  "line": 114,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5396,
                            "end": 5401,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 71
                              },
                              "end": {
                                "line": 114,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5411,
                      "end": 5484,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 81
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5415,
                        "end": 5451,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 12
                          },
                          "end": {
                            "line": 115,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5415,
                          "end": 5437,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 12
                            },
                            "end": {
                              "line": 115,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5415,
                            "end": 5422,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 12
                              },
                              "end": {
                                "line": 115,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5423,
                            "end": 5437,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 20
                              },
                              "end": {
                                "line": 115,
                                "column": 34
                              }
                            },
                            "name": "autoconstraint"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5442,
                          "end": 5451,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 39
                            },
                            "end": {
                              "line": 115,
                              "column": 48
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5453,
                        "end": 5484,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 50
                          },
                          "end": {
                            "line": 115,
                            "column": 81
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5453,
                          "end": 5483,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 50
                            },
                            "end": {
                              "line": 115,
                              "column": 80
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5453,
                            "end": 5475,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 50
                              },
                              "end": {
                                "line": 115,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5453,
                              "end": 5460,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 50
                                },
                                "end": {
                                  "line": 115,
                                  "column": 57
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5461,
                              "end": 5475,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 58
                                },
                                "end": {
                                  "line": 115,
                                  "column": 72
                                }
                              },
                              "name": "autoconstraint"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5478,
                            "end": 5483,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 75
                              },
                              "end": {
                                "line": 115,
                                "column": 80
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5494,
                      "end": 5523,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5494,
                        "end": 5522,
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 8
                          },
                          "end": {
                            "line": 117,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 5494,
                          "end": 5501,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 8
                            },
                            "end": {
                              "line": 117,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 5504,
                          "end": 5522,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 18
                            },
                            "end": {
                              "line": 117,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5504,
                            "end": 5513,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 18
                              },
                              "end": {
                                "line": 117,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 5504,
                              "end": 5506,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 18
                                },
                                "end": {
                                  "line": 117,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5507,
                              "end": 5513,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 21
                                },
                                "end": {
                                  "line": 117,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5514,
                              "end": 5521,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 28
                                },
                                "end": {
                                  "line": 117,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5532,
                      "end": 5561,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 8
                        },
                        "end": {
                          "line": 118,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5536,
                          "end": 5560,
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 12
                            },
                            "end": {
                              "line": 118,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5536,
                            "end": 5544,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 12
                              },
                              "end": {
                                "line": 118,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5547,
                            "end": 5560,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 23
                              },
                              "end": {
                                "line": 118,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5547,
                              "end": 5551,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 23
                                },
                                "end": {
                                  "line": 118,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5552,
                              "end": 5560,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 28
                                },
                                "end": {
                                  "line": 118,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5570,
                      "end": 5595,
                      "loc": {
                        "start": {
                          "line": 119,
                          "column": 8
                        },
                        "end": {
                          "line": 119,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5574,
                          "end": 5594,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 12
                            },
                            "end": {
                              "line": 119,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5574,
                            "end": 5578,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5581,
                            "end": 5594,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 19
                              },
                              "end": {
                                "line": 119,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5581,
                              "end": 5589,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 19
                                },
                                "end": {
                                  "line": 119,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5590,
                              "end": 5594,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 28
                                },
                                "end": {
                                  "line": 119,
                                  "column": 32
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 5605,
                      "end": 5668,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 8
                        },
                        "end": {
                          "line": 122,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5609,
                        "end": 5629,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 12
                          },
                          "end": {
                            "line": 121,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5609,
                          "end": 5623,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 12
                            },
                            "end": {
                              "line": 121,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5609,
                            "end": 5616,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 19
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5617,
                            "end": 5623,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 20
                              },
                              "end": {
                                "line": 121,
                                "column": 26
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 5628,
                          "end": 5629,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 31
                            },
                            "end": {
                              "line": 121,
                              "column": 32
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 5643,
                        "end": 5668,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 12
                          },
                          "end": {
                            "line": 122,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 5650,
                          "end": 5667,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 19
                            },
                            "end": {
                              "line": 122,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5650,
                            "end": 5665,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 19
                              },
                              "end": {
                                "line": 122,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5650,
                              "end": 5657,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 19
                                },
                                "end": {
                                  "line": 122,
                                  "column": 26
                                }
                              },
                              "name": "Promise"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5658,
                              "end": 5665,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 27
                                },
                                "end": {
                                  "line": 122,
                                  "column": 34
                                }
                              },
                              "name": "resolve"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5678,
                      "end": 5742,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 125,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5682,
                        "end": 5698,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 12
                          },
                          "end": {
                            "line": 124,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5682,
                          "end": 5689,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 12
                            },
                            "end": {
                              "line": 124,
                              "column": 19
                            }
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5690,
                          "end": 5698,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 20
                            },
                            "end": {
                              "line": 124,
                              "column": 28
                            }
                          },
                          "name": "onClient"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5712,
                        "end": 5742,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 12
                          },
                          "end": {
                            "line": 125,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5712,
                          "end": 5741,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 12
                            },
                            "end": {
                              "line": 125,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5712,
                            "end": 5726,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5712,
                              "end": 5720,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 12
                                },
                                "end": {
                                  "line": 125,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5712,
                                "end": 5716,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5717,
                                "end": 5720,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 20
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5721,
                              "end": 5726,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 21
                                },
                                "end": {
                                  "line": 125,
                                  "column": 26
                                }
                              },
                              "name": "apply"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5727,
                              "end": 5731,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 27
                                },
                                "end": {
                                  "line": 125,
                                  "column": 31
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 5733,
                              "end": 5740,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 33
                                },
                                "end": {
                                  "line": 125,
                                  "column": 40
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " must be done before server command so that parseObjectTree can find the objects in children",
                          "start": 5743,
                          "end": 5837,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5743,
                            5837
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5847,
                      "end": 6641,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 143,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5851,
                          "end": 6640,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 12
                            },
                            "end": {
                              "line": 143,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5851,
                            "end": 5862,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 12
                              },
                              "end": {
                                "line": 127,
                                "column": 23
                              }
                            },
                            "name": "afterServer",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 5865,
                            "end": 6640,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 26
                              },
                              "end": {
                                "line": 143,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 5871,
                              "end": 6640,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 32
                                },
                                "end": {
                                  "line": 143,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5885,
                                  "end": 6153,
                                  "loc": {
                                    "start": {
                                      "line": 128,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5885,
                                    "end": 6152,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5885,
                                      "end": 5900,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5885,
                                        "end": 5892,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5893,
                                        "end": 5900,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 5901,
                                        "end": 6151,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 5901,
                                            "end": 5904,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 5908,
                                          "end": 6151,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 134,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 5926,
                                              "end": 5986,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 130,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 5930,
                                                "end": 5957,
                                                "loc": {
                                                  "start": {
                                                    "line": 129,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 129,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5930,
                                                  "end": 5952,
                                                  "loc": {
                                                    "start": {
                                                      "line": 129,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 129,
                                                      "column": 42
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 5930,
                                                    "end": 5948,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 38
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5930,
                                                      "end": 5934,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 24
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5935,
                                                      "end": 5948,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 25
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5949,
                                                    "end": 5952,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "has"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5953,
                                                    "end": 5956,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 5979,
                                                "end": 5986,
                                                "loc": {
                                                  "start": {
                                                    "line": 130,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 130,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6003,
                                              "end": 6031,
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 44
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6003,
                                                "end": 6030,
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 43
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6003,
                                                  "end": 6025,
                                                  "loc": {
                                                    "start": {
                                                      "line": 131,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 131,
                                                      "column": 38
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 6003,
                                                    "end": 6021,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 6003,
                                                      "end": 6007,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6008,
                                                      "end": 6021,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6022,
                                                    "end": 6025,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "add"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6026,
                                                    "end": 6029,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6048,
                                              "end": 6090,
                                              "loc": {
                                                "start": {
                                                  "line": 132,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 132,
                                                  "column": 58
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6048,
                                                "end": 6089,
                                                "loc": {
                                                  "start": {
                                                    "line": 132,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 132,
                                                    "column": 57
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6048,
                                                  "end": 6078,
                                                  "loc": {
                                                    "start": {
                                                      "line": 132,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 132,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 6048,
                                                    "end": 6056,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 24
                                                      }
                                                    },
                                                    "name": "Sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6057,
                                                    "end": 6078,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 25
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "registerVisualization"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6079,
                                                    "end": 6083,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "view"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6085,
                                                    "end": 6088,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 56
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6107,
                                              "end": 6137,
                                              "loc": {
                                                "start": {
                                                  "line": 133,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 133,
                                                  "column": 46
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6107,
                                                "end": 6136,
                                                "loc": {
                                                  "start": {
                                                    "line": 133,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 133,
                                                    "column": 45
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6107,
                                                  "end": 6116,
                                                  "loc": {
                                                    "start": {
                                                      "line": 133,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 133,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 6107,
                                                    "end": 6111,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6112,
                                                    "end": 6116,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 6117,
                                                    "end": 6130,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 39
                                                      }
                                                    },
                                                    "value": "SketchAdded",
                                                    "rawValue": "SketchAdded",
                                                    "raw": "'SketchAdded'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6132,
                                                    "end": 6135,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 6167,
                                  "end": 6630,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 6171,
                                    "end": 6236,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 136,
                                        "column": 81
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6171,
                                      "end": 6193,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6171,
                                        "end": 6178,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 23
                                          }
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6179,
                                        "end": 6193,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 38
                                          }
                                        },
                                        "name": "autoconstraint"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 6197,
                                      "end": 6236,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6197,
                                        "end": 6210,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6197,
                                          "end": 6205,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 50
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6206,
                                          "end": 6210,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 55
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6211,
                                        "end": 6236,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 81
                                          }
                                        },
                                        "name": "autoconstraintIncremental"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 6238,
                                    "end": 6630,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 83
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6338,
                                        "end": 6382,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 60
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6342,
                                            "end": 6381,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 59
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6342,
                                              "end": 6349,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 27
                                                }
                                              },
                                              "name": "autogen",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 6352,
                                              "end": 6381,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 6356,
                                                "end": 6375,
                                                "loc": {
                                                  "start": {
                                                    "line": 138,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 138,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "ConstraintGenerator"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "ThisExpression",
                                                  "start": 6376,
                                                  "end": 6380,
                                                  "loc": {
                                                    "start": {
                                                      "line": 138,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 138,
                                                      "column": 58
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "var",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "generate implied constraints for the objects just drawn by user",
                                            "start": 6256,
                                            "end": 6321,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 81
                                              }
                                            },
                                            "range": [
                                              6256,
                                              6321
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6399,
                                        "end": 6492,
                                        "loc": {
                                          "start": {
                                            "line": 139,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 139,
                                            "column": 109
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6403,
                                            "end": 6491,
                                            "loc": {
                                              "start": {
                                                "line": 139,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 139,
                                                "column": 108
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6403,
                                              "end": 6414,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 6417,
                                              "end": 6491,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 108
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 6417,
                                                "end": 6451,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 68
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 6417,
                                                  "end": 6424,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "autogen"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 6425,
                                                  "end": 6451,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "generateImpliedConstraints"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "CallExpression",
                                                  "start": 6452,
                                                  "end": 6490,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 107
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 6452,
                                                    "end": 6481,
                                                    "loc": {
                                                      "start": {
                                                        "line": 139,
                                                        "column": 69
                                                      },
                                                      "end": {
                                                        "line": 139,
                                                        "column": 98
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 6452,
                                                      "end": 6458,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 75
                                                        }
                                                      },
                                                      "name": "Sketch"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6459,
                                                      "end": 6481,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 76
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 98
                                                        }
                                                      },
                                                      "name": "ForObjectsWithChildren"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 6482,
                                                      "end": 6489,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 99
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 106
                                                        }
                                                      },
                                                      "name": "objects"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 6509,
                                        "end": 6616,
                                        "loc": {
                                          "start": {
                                            "line": 140,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 141,
                                            "column": 79
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 6513,
                                          "end": 6535,
                                          "loc": {
                                            "start": {
                                              "line": 140,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 140,
                                              "column": 42
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 6513,
                                            "end": 6531,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 6513,
                                              "end": 6524,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6525,
                                              "end": 6531,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 38
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Literal",
                                            "start": 6534,
                                            "end": 6535,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 42
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 6557,
                                          "end": 6616,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 79
                                            }
                                          },
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 6564,
                                            "end": 6615,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 78
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 6564,
                                              "end": 6580,
                                              "loc": {
                                                "start": {
                                                  "line": 141,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 141,
                                                  "column": 43
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 6564,
                                                "end": 6568,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 31
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6569,
                                                "end": 6580,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "addToSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 6581,
                                                "end": 6592,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "constraints"
                                              },
                                              {
                                                "type": "ObjectExpression",
                                                "start": 6594,
                                                "end": 6614,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 77
                                                  }
                                                },
                                                "properties": [
                                                  {
                                                    "type": "Property",
                                                    "start": 6595,
                                                    "end": 6613,
                                                    "loc": {
                                                      "start": {
                                                        "line": 141,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 141,
                                                        "column": 76
                                                      }
                                                    },
                                                    "method": false,
                                                    "shorthand": false,
                                                    "computed": false,
                                                    "key": {
                                                      "type": "Identifier",
                                                      "start": 6595,
                                                      "end": 6607,
                                                      "loc": {
                                                        "start": {
                                                          "line": 141,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 141,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "updateSketch"
                                                    },
                                                    "value": {
                                                      "type": "Literal",
                                                      "start": 6609,
                                                      "end": 6613,
                                                      "loc": {
                                                        "start": {
                                                          "line": 141,
                                                          "column": 72
                                                        },
                                                        "end": {
                                                          "line": 141,
                                                          "column": 76
                                                        }
                                                      },
                                                      "value": true,
                                                      "rawValue": true,
                                                      "raw": "true"
                                                    },
                                                    "kind": "init"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " must be done before server command so that parseObjectTree can find the objects in children",
                          "start": 5743,
                          "end": 5837,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5743,
                            5837
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6651,
                          "end": 6727,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6651,
                            6727
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 6736,
                      "end": 7042,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 151,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6740,
                        "end": 6756,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 12
                          },
                          "end": {
                            "line": 146,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6740,
                          "end": 6747,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 12
                            },
                            "end": {
                              "line": 146,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6748,
                          "end": 6756,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 20
                            },
                            "end": {
                              "line": 146,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6758,
                        "end": 7042,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 30
                          },
                          "end": {
                            "line": 151,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 6772,
                            "end": 6846,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 147,
                                "column": 86
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 6778,
                                "end": 6845,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 85
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 6778,
                                  "end": 6788,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 28
                                    }
                                  },
                                  "name": "statements"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 6791,
                                  "end": 6845,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 85
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6791,
                                    "end": 6802,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6791,
                                      "end": 6798,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 38
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6799,
                                      "end": 6802,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 42
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 6803,
                                      "end": 6844,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 84
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 6803,
                                          "end": 6809,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 49
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 6813,
                                        "end": 6844,
                                        "loc": {
                                          "start": {
                                            "line": 147,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 147,
                                            "column": 84
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 6813,
                                          "end": 6838,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 78
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 6813,
                                            "end": 6819,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 6820,
                                            "end": 6838,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 78
                                              }
                                            },
                                            "name": "prepareAddOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 6839,
                                            "end": 6843,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 79
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 83
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "const"
                          },
                          {
                            "type": "IfStatement",
                            "start": 6859,
                            "end": 6942,
                            "loc": {
                              "start": {
                                "line": 148,
                                "column": 12
                              },
                              "end": {
                                "line": 149,
                                "column": 57
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 6863,
                              "end": 6883,
                              "loc": {
                                "start": {
                                  "line": 148,
                                  "column": 16
                                },
                                "end": {
                                  "line": 148,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6863,
                                "end": 6870,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 23
                                  }
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6871,
                                "end": 6883,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 36
                                  }
                                },
                                "name": "updateSketch"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 6901,
                              "end": 6942,
                              "loc": {
                                "start": {
                                  "line": 149,
                                  "column": 16
                                },
                                "end": {
                                  "line": 149,
                                  "column": 57
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 6901,
                                "end": 6941,
                                "loc": {
                                  "start": {
                                    "line": 149,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 149,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6901,
                                  "end": 6916,
                                  "loc": {
                                    "start": {
                                      "line": 149,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 149,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6901,
                                    "end": 6911,
                                    "loc": {
                                      "start": {
                                        "line": 149,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 149,
                                        "column": 26
                                      }
                                    },
                                    "name": "statements"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6912,
                                    "end": 6916,
                                    "loc": {
                                      "start": {
                                        "line": 149,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 149,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 6917,
                                    "end": 6940,
                                    "loc": {
                                      "start": {
                                        "line": 149,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 149,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 6917,
                                      "end": 6938,
                                      "loc": {
                                        "start": {
                                          "line": 149,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 149,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6917,
                                        "end": 6921,
                                        "loc": {
                                          "start": {
                                            "line": 149,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 149,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6922,
                                        "end": 6938,
                                        "loc": {
                                          "start": {
                                            "line": 149,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 149,
                                            "column": 53
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6955,
                            "end": 7032,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 12
                              },
                              "end": {
                                "line": 150,
                                "column": 89
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 6962,
                              "end": 7031,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 19
                                },
                                "end": {
                                  "line": 150,
                                  "column": 88
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6962,
                                "end": 7018,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 6962,
                                  "end": 7013,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6962,
                                    "end": 6996,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 6962,
                                      "end": 6988,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 45
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 6962,
                                        "end": 6976,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6962,
                                          "end": 6972,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 29
                                            }
                                          },
                                          "name": "Statements"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6973,
                                          "end": 6976,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 33
                                            }
                                          },
                                          "name": "all"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 6977,
                                          "end": 6987,
                                          "loc": {
                                            "start": {
                                              "line": 150,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 150,
                                              "column": 44
                                            }
                                          },
                                          "name": "statements"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6989,
                                      "end": 6996,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 53
                                        }
                                      },
                                      "name": "execute"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 6997,
                                      "end": 7012,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 69
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6997,
                                        "end": 7005,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 62
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7006,
                                        "end": 7012,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 69
                                          }
                                        },
                                        "name": "socket"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7014,
                                  "end": 7018,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 75
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7019,
                                  "end": 7030,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 87
                                    }
                                  },
                                  "name": "afterServer"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6651,
                          "end": 6727,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6651,
                            6727
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7052,
                      "end": 7090,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 8
                        },
                        "end": {
                          "line": 153,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7059,
                        "end": 7089,
                        "loc": {
                          "start": {
                            "line": 153,
                            "column": 15
                          },
                          "end": {
                            "line": 153,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7059,
                          "end": 7074,
                          "loc": {
                            "start": {
                              "line": 153,
                              "column": 15
                            },
                            "end": {
                              "line": 153,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7059,
                            "end": 7066,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 15
                              },
                              "end": {
                                "line": 153,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7067,
                            "end": 7074,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 23
                              },
                              "end": {
                                "line": 153,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7075,
                            "end": 7088,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 31
                              },
                              "end": {
                                "line": 153,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 7075,
                              "end": 7086,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 31
                                },
                                "end": {
                                  "line": 153,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Part.SketchSet.Sketch",
                  "start": 4505,
                  "end": 4529,
                  "loc": {
                    "start": {
                      "line": 101,
                      "column": 35
                    },
                    "end": {
                      "line": 101,
                      "column": 59
                    }
                  },
                  "range": [
                    4505,
                    4529
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4541,
                  "end": 4610,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4541,
                    4610
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4615,
                  "end": 4717,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4615,
                    4717
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4722,
                  "end": 4742,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4722,
                    4742
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4747,
                  "end": 4818,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4747,
                    4818
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4823,
                  "end": 4889,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4823,
                    4889
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4894,
                  "end": 4995,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    4894,
                    4995
                  ]
                },
                {
                  "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": 5000,
                  "end": 5145,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    5000,
                    5145
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7102,
                  "end": 7153,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 4
                    },
                    "end": {
                      "line": 156,
                      "column": 55
                    }
                  },
                  "range": [
                    7102,
                    7153
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 7158,
              "end": 8853,
              "loc": {
                "start": {
                  "line": 157,
                  "column": 4
                },
                "end": {
                  "line": 194,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7158,
                "end": 7174,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 4
                  },
                  "end": {
                    "line": 157,
                    "column": 20
                  }
                },
                "name": "removeFromSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7174,
                "end": 8853,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 20
                  },
                  "end": {
                    "line": 194,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7175,
                    "end": 7182,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 21
                      },
                      "end": {
                        "line": 157,
                        "column": 28
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 7184,
                    "end": 7196,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 30
                      },
                      "end": {
                        "line": 157,
                        "column": 42
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 7184,
                      "end": 7191,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 30
                        },
                        "end": {
                          "line": 157,
                          "column": 37
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 7194,
                      "end": 7196,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 40
                        },
                        "end": {
                          "line": 157,
                          "column": 42
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7198,
                  "end": 8853,
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 44
                    },
                    "end": {
                      "line": 194,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 7208,
                      "end": 7268,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7212,
                        "end": 7242,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 12
                          },
                          "end": {
                            "line": 158,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7212,
                          "end": 7228,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 12
                            },
                            "end": {
                              "line": 158,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7212,
                            "end": 7219,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 12
                              },
                              "end": {
                                "line": 158,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7220,
                            "end": 7228,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 20
                              },
                              "end": {
                                "line": 158,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7233,
                          "end": 7242,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 33
                            },
                            "end": {
                              "line": 158,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7244,
                        "end": 7268,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 44
                          },
                          "end": {
                            "line": 158,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7244,
                          "end": 7267,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 44
                            },
                            "end": {
                              "line": 158,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7244,
                            "end": 7260,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 44
                              },
                              "end": {
                                "line": 158,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7244,
                              "end": 7251,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 44
                                },
                                "end": {
                                  "line": 158,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7252,
                              "end": 7260,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 52
                                },
                                "end": {
                                  "line": 158,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7263,
                            "end": 7267,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 63
                              },
                              "end": {
                                "line": 158,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7277,
                      "end": 7337,
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 8
                        },
                        "end": {
                          "line": 159,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7281,
                        "end": 7311,
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 12
                          },
                          "end": {
                            "line": 159,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7281,
                          "end": 7297,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 12
                            },
                            "end": {
                              "line": 159,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7281,
                            "end": 7288,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 12
                              },
                              "end": {
                                "line": 159,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7289,
                            "end": 7297,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 20
                              },
                              "end": {
                                "line": 159,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7302,
                          "end": 7311,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 33
                            },
                            "end": {
                              "line": 159,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7313,
                        "end": 7337,
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 44
                          },
                          "end": {
                            "line": 159,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7313,
                          "end": 7336,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 44
                            },
                            "end": {
                              "line": 159,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7313,
                            "end": 7329,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 44
                              },
                              "end": {
                                "line": 159,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7313,
                              "end": 7320,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 44
                                },
                                "end": {
                                  "line": 159,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7321,
                              "end": 7329,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 52
                                },
                                "end": {
                                  "line": 159,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7332,
                            "end": 7336,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 63
                              },
                              "end": {
                                "line": 159,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7346,
                      "end": 7415,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7350,
                        "end": 7384,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 12
                          },
                          "end": {
                            "line": 160,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7350,
                          "end": 7370,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7350,
                            "end": 7357,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 12
                              },
                              "end": {
                                "line": 160,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7358,
                            "end": 7370,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 20
                              },
                              "end": {
                                "line": 160,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7375,
                          "end": 7384,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 37
                            },
                            "end": {
                              "line": 160,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7386,
                        "end": 7415,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 48
                          },
                          "end": {
                            "line": 160,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7386,
                          "end": 7414,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 48
                            },
                            "end": {
                              "line": 160,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7386,
                            "end": 7406,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 48
                              },
                              "end": {
                                "line": 160,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7386,
                              "end": 7393,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 48
                                },
                                "end": {
                                  "line": 160,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7394,
                              "end": 7406,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 56
                                },
                                "end": {
                                  "line": 160,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7409,
                            "end": 7414,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 71
                              },
                              "end": {
                                "line": 160,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7425,
                      "end": 7454,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 162,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7425,
                        "end": 7453,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 8
                          },
                          "end": {
                            "line": 162,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7425,
                          "end": 7432,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7435,
                          "end": 7453,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 18
                            },
                            "end": {
                              "line": 162,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7435,
                            "end": 7444,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 18
                              },
                              "end": {
                                "line": 162,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 7435,
                              "end": 7437,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 18
                                },
                                "end": {
                                  "line": 162,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7438,
                              "end": 7444,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 21
                                },
                                "end": {
                                  "line": 162,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7445,
                              "end": 7452,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 28
                                },
                                "end": {
                                  "line": 162,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7463,
                      "end": 7492,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 8
                        },
                        "end": {
                          "line": 163,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7467,
                          "end": 7491,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 12
                            },
                            "end": {
                              "line": 163,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7467,
                            "end": 7475,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 12
                              },
                              "end": {
                                "line": 163,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7478,
                            "end": 7491,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 23
                              },
                              "end": {
                                "line": 163,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7478,
                              "end": 7482,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 23
                                },
                                "end": {
                                  "line": 163,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7483,
                              "end": 7491,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 28
                                },
                                "end": {
                                  "line": 163,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7501,
                      "end": 7526,
                      "loc": {
                        "start": {
                          "line": 164,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7505,
                          "end": 7525,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 12
                            },
                            "end": {
                              "line": 164,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7505,
                            "end": 7509,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 12
                              },
                              "end": {
                                "line": 164,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7512,
                            "end": 7525,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 19
                              },
                              "end": {
                                "line": 164,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7512,
                              "end": 7520,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 19
                                },
                                "end": {
                                  "line": 164,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7521,
                              "end": 7525,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 28
                                },
                                "end": {
                                  "line": 164,
                                  "column": 32
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7536,
                          "end": 7590,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 62
                            }
                          },
                          "range": [
                            7536,
                            7590
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7599,
                      "end": 7654,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7603,
                          "end": 7653,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 12
                            },
                            "end": {
                              "line": 167,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7603,
                            "end": 7612,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 12
                              },
                              "end": {
                                "line": 167,
                                "column": 21
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7615,
                            "end": 7653,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 24
                              },
                              "end": {
                                "line": 167,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7615,
                              "end": 7644,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 24
                                },
                                "end": {
                                  "line": 167,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7615,
                                "end": 7621,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7622,
                                "end": 7644,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 53
                                  }
                                },
                                "name": "ForObjectsWithChildren"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7645,
                                "end": 7652,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 61
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7536,
                          "end": 7590,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 62
                            }
                          },
                          "range": [
                            7536,
                            7590
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7663,
                      "end": 7727,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7667,
                          "end": 7726,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 12
                            },
                            "end": {
                              "line": 168,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7667,
                            "end": 7685,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 12
                              },
                              "end": {
                                "line": 168,
                                "column": 30
                              }
                            },
                            "name": "relatedConstraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7688,
                            "end": 7726,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 33
                              },
                              "end": {
                                "line": 168,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7688,
                              "end": 7715,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 33
                                },
                                "end": {
                                  "line": 168,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7688,
                                "end": 7692,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7693,
                                "end": 7715,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 60
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7716,
                                "end": 7725,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 70
                                  }
                                },
                                "name": "objectsCh"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7736,
                      "end": 7835,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 169,
                          "column": 107
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7736,
                        "end": 7834,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 169,
                            "column": 106
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7736,
                          "end": 7743,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7746,
                          "end": 7834,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 18
                            },
                            "end": {
                              "line": 169,
                              "column": 106
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7746,
                            "end": 7771,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 18
                              },
                              "end": {
                                "line": 169,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7746,
                              "end": 7764,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 18
                                },
                                "end": {
                                  "line": 169,
                                  "column": 36
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7765,
                              "end": 7771,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 37
                                },
                                "end": {
                                  "line": 169,
                                  "column": 43
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7772,
                              "end": 7833,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 44
                                },
                                "end": {
                                  "line": 169,
                                  "column": 105
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7772,
                                "end": 7786,
                                "loc": {
                                  "start": {
                                    "line": 169,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 169,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7772,
                                  "end": 7779,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 51
                                    }
                                  },
                                  "name": "objects"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7780,
                                  "end": 7786,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 58
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7787,
                                  "end": 7832,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 104
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7787,
                                      "end": 7790,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 62
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7794,
                                    "end": 7832,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 104
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7794,
                                      "end": 7825,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 97
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7794,
                                        "end": 7820,
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 92
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7794,
                                          "end": 7812,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 84
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7813,
                                          "end": 7820,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 85
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 92
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7821,
                                          "end": 7824,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 93
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 96
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7830,
                                      "end": 7832,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 104
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7831,
                                        "end": 7832,
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 104
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7844,
                      "end": 7947,
                      "loc": {
                        "start": {
                          "line": 170,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 111
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7844,
                        "end": 7946,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 8
                          },
                          "end": {
                            "line": 170,
                            "column": 110
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7844,
                          "end": 7853,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 17
                            }
                          },
                          "name": "objectsCh"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7856,
                          "end": 7946,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 20
                            },
                            "end": {
                              "line": 170,
                              "column": 110
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7856,
                            "end": 7881,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 20
                              },
                              "end": {
                                "line": 170,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7856,
                              "end": 7874,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 20
                                },
                                "end": {
                                  "line": 170,
                                  "column": 38
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7875,
                              "end": 7881,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 39
                                },
                                "end": {
                                  "line": 170,
                                  "column": 45
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7882,
                              "end": 7945,
                              "loc": {
                                "start": {
                                  "line": 170,
                                  "column": 46
                                },
                                "end": {
                                  "line": 170,
                                  "column": 109
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7882,
                                "end": 7898,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7882,
                                  "end": 7891,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 55
                                    }
                                  },
                                  "name": "objectsCh"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7892,
                                  "end": 7898,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 62
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7899,
                                  "end": 7944,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 108
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7899,
                                      "end": 7902,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 66
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7906,
                                    "end": 7944,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 108
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7906,
                                      "end": 7937,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 101
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7906,
                                        "end": 7932,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 96
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7906,
                                          "end": 7924,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 88
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7925,
                                          "end": 7932,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 96
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7933,
                                          "end": 7936,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 100
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7942,
                                      "end": 7944,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 106
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 108
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7943,
                                        "end": 7944,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 107
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 108
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7957,
                          "end": 8009,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 172,
                              "column": 60
                            }
                          },
                          "range": [
                            7957,
                            8009
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8018,
                      "end": 8139,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8018,
                        "end": 8138,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 8
                          },
                          "end": {
                            "line": 176,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8018,
                          "end": 8035,
                          "loc": {
                            "start": {
                              "line": 173,
                              "column": 8
                            },
                            "end": {
                              "line": 173,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8018,
                            "end": 8027,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 8
                              },
                              "end": {
                                "line": 173,
                                "column": 17
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8028,
                            "end": 8035,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 18
                              },
                              "end": {
                                "line": 173,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8036,
                            "end": 8137,
                            "loc": {
                              "start": {
                                "line": 173,
                                "column": 26
                              },
                              "end": {
                                "line": 176,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8036,
                                "end": 8039,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 29
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8043,
                              "end": 8137,
                              "loc": {
                                "start": {
                                  "line": 173,
                                  "column": 33
                                },
                                "end": {
                                  "line": 176,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8057,
                                  "end": 8090,
                                  "loc": {
                                    "start": {
                                      "line": 174,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 174,
                                      "column": 45
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8057,
                                    "end": 8089,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8057,
                                      "end": 8087,
                                      "loc": {
                                        "start": {
                                          "line": 174,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 174,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8057,
                                        "end": 8069,
                                        "loc": {
                                          "start": {
                                            "line": 174,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 174,
                                            "column": 24
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8057,
                                          "end": 8060,
                                          "loc": {
                                            "start": {
                                              "line": 174,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 174,
                                              "column": 15
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8061,
                                          "end": 8069,
                                          "loc": {
                                            "start": {
                                              "line": 174,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 174,
                                              "column": 24
                                            }
                                          },
                                          "name": "interact"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8070,
                                        "end": 8087,
                                        "loc": {
                                          "start": {
                                            "line": 174,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 174,
                                            "column": 42
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8103,
                                  "end": 8127,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 36
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8103,
                                    "end": 8126,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 35
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8103,
                                      "end": 8124,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8103,
                                        "end": 8106,
                                        "loc": {
                                          "start": {
                                            "line": 175,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 15
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8107,
                                        "end": 8124,
                                        "loc": {
                                          "start": {
                                            "line": 175,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 33
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7957,
                          "end": 8009,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 172,
                              "column": 60
                            }
                          },
                          "range": [
                            7957,
                            8009
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8149,
                      "end": 8391,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 184,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8153,
                          "end": 8390,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 12
                            },
                            "end": {
                              "line": 184,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8153,
                            "end": 8164,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 12
                              },
                              "end": {
                                "line": 178,
                                "column": 23
                              }
                            },
                            "name": "afterServer"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 8167,
                            "end": 8390,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 26
                              },
                              "end": {
                                "line": 184,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8173,
                              "end": 8390,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 32
                                },
                                "end": {
                                  "line": 184,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8187,
                                  "end": 8380,
                                  "loc": {
                                    "start": {
                                      "line": 179,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 183,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8187,
                                    "end": 8379,
                                    "loc": {
                                      "start": {
                                        "line": 179,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8187,
                                      "end": 8202,
                                      "loc": {
                                        "start": {
                                          "line": 179,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 179,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8187,
                                        "end": 8194,
                                        "loc": {
                                          "start": {
                                            "line": 179,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 179,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8195,
                                        "end": 8202,
                                        "loc": {
                                          "start": {
                                            "line": 179,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 179,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 8203,
                                        "end": 8378,
                                        "loc": {
                                          "start": {
                                            "line": 179,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 183,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 8203,
                                            "end": 8206,
                                            "loc": {
                                              "start": {
                                                "line": 179,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 179,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 8210,
                                          "end": 8378,
                                          "loc": {
                                            "start": {
                                              "line": 179,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 183,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 8228,
                                              "end": 8267,
                                              "loc": {
                                                "start": {
                                                  "line": 180,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 180,
                                                  "column": 55
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 8232,
                                                "end": 8248,
                                                "loc": {
                                                  "start": {
                                                    "line": 180,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 180,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8232,
                                                  "end": 8239,
                                                  "loc": {
                                                    "start": {
                                                      "line": 180,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 180,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "options"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8240,
                                                  "end": 8248,
                                                  "loc": {
                                                    "start": {
                                                      "line": 180,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 180,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "onClient"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 8250,
                                                "end": 8267,
                                                "loc": {
                                                  "start": {
                                                    "line": 180,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 180,
                                                    "column": 55
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 8250,
                                                  "end": 8266,
                                                  "loc": {
                                                    "start": {
                                                      "line": 180,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 180,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 8250,
                                                    "end": 8261,
                                                    "loc": {
                                                      "start": {
                                                        "line": 180,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 180,
                                                        "column": 49
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8250,
                                                      "end": 8254,
                                                      "loc": {
                                                        "start": {
                                                          "line": 180,
                                                          "column": 38
                                                        },
                                                        "end": {
                                                          "line": 180,
                                                          "column": 42
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8255,
                                                      "end": 8261,
                                                      "loc": {
                                                        "start": {
                                                          "line": 180,
                                                          "column": 43
                                                        },
                                                        "end": {
                                                          "line": 180,
                                                          "column": 49
                                                        }
                                                      },
                                                      "name": "remove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 8262,
                                                      "end": 8265,
                                                      "loc": {
                                                        "start": {
                                                          "line": 180,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 180,
                                                          "column": 53
                                                        }
                                                      },
                                                      "name": "obj"
                                                    }
                                                  ]
                                                }
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8284,
                                              "end": 8315,
                                              "loc": {
                                                "start": {
                                                  "line": 181,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 181,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8284,
                                                "end": 8314,
                                                "loc": {
                                                  "start": {
                                                    "line": 181,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 181,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8284,
                                                  "end": 8309,
                                                  "loc": {
                                                    "start": {
                                                      "line": 181,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 181,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 8284,
                                                    "end": 8302,
                                                    "loc": {
                                                      "start": {
                                                        "line": 181,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 181,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8284,
                                                      "end": 8288,
                                                      "loc": {
                                                        "start": {
                                                          "line": 181,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 181,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8289,
                                                      "end": 8302,
                                                      "loc": {
                                                        "start": {
                                                          "line": 181,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 181,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8303,
                                                    "end": 8309,
                                                    "loc": {
                                                      "start": {
                                                        "line": 181,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 181,
                                                        "column": 41
                                                      }
                                                    },
                                                    "name": "delete"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8310,
                                                    "end": 8313,
                                                    "loc": {
                                                      "start": {
                                                        "line": 181,
                                                        "column": 42
                                                      },
                                                      "end": {
                                                        "line": 181,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8332,
                                              "end": 8364,
                                              "loc": {
                                                "start": {
                                                  "line": 182,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 182,
                                                  "column": 48
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8332,
                                                "end": 8363,
                                                "loc": {
                                                  "start": {
                                                    "line": 182,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 182,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8332,
                                                  "end": 8341,
                                                  "loc": {
                                                    "start": {
                                                      "line": 182,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 182,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 8332,
                                                    "end": 8336,
                                                    "loc": {
                                                      "start": {
                                                        "line": 182,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 182,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8337,
                                                    "end": 8341,
                                                    "loc": {
                                                      "start": {
                                                        "line": 182,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 182,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 8342,
                                                    "end": 8357,
                                                    "loc": {
                                                      "start": {
                                                        "line": 182,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 182,
                                                        "column": 41
                                                      }
                                                    },
                                                    "value": "SketchRemoved",
                                                    "rawValue": "SketchRemoved",
                                                    "raw": "'SketchRemoved'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8359,
                                                    "end": 8362,
                                                    "loc": {
                                                      "start": {
                                                        "line": 182,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 182,
                                                        "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": 8401,
                          "end": 8482,
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 8
                            },
                            "end": {
                              "line": 186,
                              "column": 89
                            }
                          },
                          "range": [
                            8401,
                            8482
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8491,
                      "end": 8800,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 8
                        },
                        "end": {
                          "line": 192,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 8495,
                        "end": 8511,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 12
                          },
                          "end": {
                            "line": 187,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8495,
                          "end": 8502,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 12
                            },
                            "end": {
                              "line": 187,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8503,
                          "end": 8511,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 20
                            },
                            "end": {
                              "line": 187,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8513,
                        "end": 8800,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 30
                          },
                          "end": {
                            "line": 192,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8527,
                            "end": 8604,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 12
                              },
                              "end": {
                                "line": 188,
                                "column": 89
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8533,
                                "end": 8603,
                                "loc": {
                                  "start": {
                                    "line": 188,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 88
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8533,
                                  "end": 8543,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 28
                                    }
                                  },
                                  "name": "statements"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 8546,
                                  "end": 8603,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 88
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8546,
                                    "end": 8557,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8546,
                                      "end": 8553,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 38
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8554,
                                      "end": 8557,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 42
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 8558,
                                      "end": 8602,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 87
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 8558,
                                          "end": 8564,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 49
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 8568,
                                        "end": 8602,
                                        "loc": {
                                          "start": {
                                            "line": 188,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 188,
                                            "column": 87
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8568,
                                          "end": 8596,
                                          "loc": {
                                            "start": {
                                              "line": 188,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 188,
                                              "column": 81
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8568,
                                            "end": 8574,
                                            "loc": {
                                              "start": {
                                                "line": 188,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 188,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8575,
                                            "end": 8596,
                                            "loc": {
                                              "start": {
                                                "line": 188,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 188,
                                                "column": 81
                                              }
                                            },
                                            "name": "prepareRemoveOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 8597,
                                            "end": 8601,
                                            "loc": {
                                              "start": {
                                                "line": 188,
                                                "column": 82
                                              },
                                              "end": {
                                                "line": 188,
                                                "column": 86
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "const"
                          },
                          {
                            "type": "IfStatement",
                            "start": 8617,
                            "end": 8700,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 12
                              },
                              "end": {
                                "line": 190,
                                "column": 57
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 8621,
                              "end": 8641,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 16
                                },
                                "end": {
                                  "line": 189,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8621,
                                "end": 8628,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 23
                                  }
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8629,
                                "end": 8641,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 36
                                  }
                                },
                                "name": "updateSketch"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 8659,
                              "end": 8700,
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 16
                                },
                                "end": {
                                  "line": 190,
                                  "column": 57
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8659,
                                "end": 8699,
                                "loc": {
                                  "start": {
                                    "line": 190,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 190,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8659,
                                  "end": 8674,
                                  "loc": {
                                    "start": {
                                      "line": 190,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 190,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8659,
                                    "end": 8669,
                                    "loc": {
                                      "start": {
                                        "line": 190,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 190,
                                        "column": 26
                                      }
                                    },
                                    "name": "statements"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8670,
                                    "end": 8674,
                                    "loc": {
                                      "start": {
                                        "line": 190,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 190,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 8675,
                                    "end": 8698,
                                    "loc": {
                                      "start": {
                                        "line": 190,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 190,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8675,
                                      "end": 8696,
                                      "loc": {
                                        "start": {
                                          "line": 190,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 190,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8675,
                                        "end": 8679,
                                        "loc": {
                                          "start": {
                                            "line": 190,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 190,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8680,
                                        "end": 8696,
                                        "loc": {
                                          "start": {
                                            "line": 190,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 190,
                                            "column": 53
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 8713,
                            "end": 8790,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 12
                              },
                              "end": {
                                "line": 191,
                                "column": 89
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 8720,
                              "end": 8789,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 19
                                },
                                "end": {
                                  "line": 191,
                                  "column": 88
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8720,
                                "end": 8776,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 8720,
                                  "end": 8771,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8720,
                                    "end": 8754,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 8720,
                                      "end": 8746,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 45
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8720,
                                        "end": 8734,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8720,
                                          "end": 8730,
                                          "loc": {
                                            "start": {
                                              "line": 191,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 191,
                                              "column": 29
                                            }
                                          },
                                          "name": "Statements"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8731,
                                          "end": 8734,
                                          "loc": {
                                            "start": {
                                              "line": 191,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 191,
                                              "column": 33
                                            }
                                          },
                                          "name": "all"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 8735,
                                          "end": 8745,
                                          "loc": {
                                            "start": {
                                              "line": 191,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 191,
                                              "column": 44
                                            }
                                          },
                                          "name": "statements"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8747,
                                      "end": 8754,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 53
                                        }
                                      },
                                      "name": "execute"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 8755,
                                      "end": 8770,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 69
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8755,
                                        "end": 8763,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 62
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8764,
                                        "end": 8770,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 69
                                          }
                                        },
                                        "name": "socket"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8772,
                                  "end": 8776,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 75
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8777,
                                  "end": 8788,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 87
                                    }
                                  },
                                  "name": "afterServer"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove objects from the sketch on the server and, if successful, on the client",
                          "start": 8401,
                          "end": 8482,
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 8
                            },
                            "end": {
                              "line": 186,
                              "column": 89
                            }
                          },
                          "range": [
                            8401,
                            8482
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 8809,
                      "end": 8847,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 8
                        },
                        "end": {
                          "line": 193,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8816,
                        "end": 8846,
                        "loc": {
                          "start": {
                            "line": 193,
                            "column": 15
                          },
                          "end": {
                            "line": 193,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8816,
                          "end": 8831,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 15
                            },
                            "end": {
                              "line": 193,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8816,
                            "end": 8823,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 15
                              },
                              "end": {
                                "line": 193,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8824,
                            "end": 8831,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 23
                              },
                              "end": {
                                "line": 193,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 8832,
                            "end": 8845,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 31
                              },
                              "end": {
                                "line": 193,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 8832,
                              "end": 8843,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 31
                                },
                                "end": {
                                  "line": 193,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7102,
                  "end": 7153,
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 4
                    },
                    "end": {
                      "line": 156,
                      "column": 55
                    }
                  },
                  "range": [
                    7102,
                    7153
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8859,
                  "end": 8930,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 4
                    },
                    "end": {
                      "line": 196,
                      "column": 75
                    }
                  },
                  "range": [
                    8859,
                    8930
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 8935,
              "end": 9032,
              "loc": {
                "start": {
                  "line": 197,
                  "column": 4
                },
                "end": {
                  "line": 199,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8935,
                "end": 8953,
                "loc": {
                  "start": {
                    "line": 197,
                    "column": 4
                  },
                  "end": {
                    "line": 197,
                    "column": 22
                  }
                },
                "name": "getObjectsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8953,
                "end": 9032,
                "loc": {
                  "start": {
                    "line": 197,
                    "column": 22
                  },
                  "end": {
                    "line": 199,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 8956,
                  "end": 9032,
                  "loc": {
                    "start": {
                      "line": 197,
                      "column": 25
                    },
                    "end": {
                      "line": 199,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8966,
                      "end": 9026,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8973,
                        "end": 9025,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 15
                          },
                          "end": {
                            "line": 198,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8973,
                          "end": 8993,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 15
                            },
                            "end": {
                              "line": 198,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8973,
                            "end": 8986,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 15
                              },
                              "end": {
                                "line": 198,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8973,
                              "end": 8977,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 15
                                },
                                "end": {
                                  "line": 198,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8978,
                              "end": 8986,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 20
                                },
                                "end": {
                                  "line": 198,
                                  "column": 28
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8987,
                            "end": 8993,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 29
                              },
                              "end": {
                                "line": 198,
                                "column": 35
                              }
                            },
                            "name": "filter"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8994,
                            "end": 9024,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 36
                              },
                              "end": {
                                "line": 198,
                                "column": 66
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8994,
                                "end": 8995,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 37
                                  }
                                },
                                "name": "c"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 8999,
                              "end": 9024,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 41
                                },
                                "end": {
                                  "line": 198,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8999,
                                "end": 9021,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8999,
                                  "end": 9017,
                                  "loc": {
                                    "start": {
                                      "line": 198,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 198,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8999,
                                    "end": 9003,
                                    "loc": {
                                      "start": {
                                        "line": 198,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 198,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9004,
                                    "end": 9017,
                                    "loc": {
                                      "start": {
                                        "line": 198,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 198,
                                        "column": 59
                                      }
                                    },
                                    "name": "sketchObjects"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9018,
                                  "end": 9021,
                                  "loc": {
                                    "start": {
                                      "line": 198,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 198,
                                      "column": 63
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9022,
                                  "end": 9023,
                                  "loc": {
                                    "start": {
                                      "line": 198,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 198,
                                      "column": 65
                                    }
                                  },
                                  "name": "c"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8859,
                  "end": 8930,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 4
                    },
                    "end": {
                      "line": 196,
                      "column": 75
                    }
                  },
                  "range": [
                    8859,
                    8930
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 9038,
                  "end": 9104,
                  "loc": {
                    "start": {
                      "line": 201,
                      "column": 4
                    },
                    "end": {
                      "line": 201,
                      "column": 70
                    }
                  },
                  "range": [
                    9038,
                    9104
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9109,
                  "end": 9175,
                  "loc": {
                    "start": {
                      "line": 202,
                      "column": 4
                    },
                    "end": {
                      "line": 202,
                      "column": 70
                    }
                  },
                  "range": [
                    9109,
                    9175
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9180,
              "end": 9617,
              "loc": {
                "start": {
                  "line": 203,
                  "column": 4
                },
                "end": {
                  "line": 213,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9180,
                "end": 9202,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 4
                  },
                  "end": {
                    "line": 203,
                    "column": 26
                  }
                },
                "name": "getConstraintsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9202,
                "end": 9617,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 26
                  },
                  "end": {
                    "line": 213,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9203,
                    "end": 9210,
                    "loc": {
                      "start": {
                        "line": 203,
                        "column": 27
                      },
                      "end": {
                        "line": 203,
                        "column": 34
                      }
                    },
                    "name": "objects"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9212,
                  "end": 9617,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 36
                    },
                    "end": {
                      "line": 213,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9222,
                      "end": 9264,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 8
                        },
                        "end": {
                          "line": 204,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9226,
                        "end": 9233,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 12
                          },
                          "end": {
                            "line": 204,
                            "column": 19
                          }
                        },
                        "name": "objects"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9235,
                        "end": 9264,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 21
                          },
                          "end": {
                            "line": 204,
                            "column": 50
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9235,
                          "end": 9263,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 21
                            },
                            "end": {
                              "line": 204,
                              "column": 49
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 9235,
                            "end": 9242,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 21
                              },
                              "end": {
                                "line": 204,
                                "column": 28
                              }
                            },
                            "name": "objects"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 9245,
                            "end": 9263,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 31
                              },
                              "end": {
                                "line": 204,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9245,
                              "end": 9254,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 31
                                },
                                "end": {
                                  "line": 204,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ArrayExpression",
                                "start": 9245,
                                "end": 9247,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 33
                                  }
                                },
                                "elements": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9248,
                                "end": 9254,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 40
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9255,
                                "end": 9262,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 48
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9274,
                      "end": 9345,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 206,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9278,
                          "end": 9344,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 12
                            },
                            "end": {
                              "line": 206,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9278,
                            "end": 9291,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 12
                              },
                              "end": {
                                "line": 206,
                                "column": 25
                              }
                            },
                            "name": "inObjectsList"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9295,
                            "end": 9343,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 29
                              },
                              "end": {
                                "line": 206,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9295,
                                "end": 9299,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 33
                                  }
                                },
                                "name": "elem"
                              }
                            ],
                            "body": {
                              "type": "LogicalExpression",
                              "start": 9303,
                              "end": 9343,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 37
                                },
                                "end": {
                                  "line": 206,
                                  "column": 77
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 9303,
                                "end": 9311,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 45
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 9304,
                                  "end": 9311,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 45
                                    }
                                  },
                                  "name": "objects"
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 9315,
                                "end": 9343,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 9315,
                                  "end": 9336,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9315,
                                    "end": 9330,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9315,
                                      "end": 9322,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 56
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9323,
                                      "end": 9330,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 64
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9331,
                                      "end": 9335,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 69
                                        }
                                      },
                                      "name": "elem"
                                    }
                                  ]
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 9341,
                                  "end": 9343,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 77
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 9342,
                                    "end": 9343,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9354,
                      "end": 9423,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 77
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9358,
                          "end": 9422,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 12
                            },
                            "end": {
                              "line": 207,
                              "column": 76
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9358,
                            "end": 9376,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 12
                              },
                              "end": {
                                "line": 207,
                                "column": 30
                              }
                            },
                            "name": "isRelatedToObjects"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9380,
                            "end": 9421,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 34
                              },
                              "end": {
                                "line": 207,
                                "column": 75
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9380,
                                "end": 9386,
                                "loc": {
                                  "start": {
                                    "line": 207,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 207,
                                    "column": 40
                                  }
                                },
                                "name": "constr"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9390,
                              "end": 9421,
                              "loc": {
                                "start": {
                                  "line": 207,
                                  "column": 44
                                },
                                "end": {
                                  "line": 207,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9390,
                                "end": 9406,
                                "loc": {
                                  "start": {
                                    "line": 207,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 207,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9390,
                                  "end": 9401,
                                  "loc": {
                                    "start": {
                                      "line": 207,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9390,
                                    "end": 9396,
                                    "loc": {
                                      "start": {
                                        "line": 207,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 207,
                                        "column": 50
                                      }
                                    },
                                    "name": "constr"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9397,
                                    "end": 9401,
                                    "loc": {
                                      "start": {
                                        "line": 207,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 207,
                                        "column": 55
                                      }
                                    },
                                    "name": "args"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9402,
                                  "end": 9406,
                                  "loc": {
                                    "start": {
                                      "line": 207,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 60
                                    }
                                  },
                                  "name": "some"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9407,
                                  "end": 9420,
                                  "loc": {
                                    "start": {
                                      "line": 207,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 74
                                    }
                                  },
                                  "name": "inObjectsList"
                                }
                              ]
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9433,
                      "end": 9579,
                      "loc": {
                        "start": {
                          "line": 209,
                          "column": 8
                        },
                        "end": {
                          "line": 211,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9437,
                          "end": 9578,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 12
                            },
                            "end": {
                              "line": 211,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9437,
                            "end": 9452,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 12
                              },
                              "end": {
                                "line": 209,
                                "column": 27
                              }
                            },
                            "name": "constraintsList"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9455,
                            "end": 9578,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 30
                              },
                              "end": {
                                "line": 211,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9455,
                              "end": 9558,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 30
                                },
                                "end": {
                                  "line": 211,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9455,
                                "end": 9538,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9455,
                                  "end": 9500,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 19
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9455,
                                    "end": 9480,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9455,
                                      "end": 9478,
                                      "loc": {
                                        "start": {
                                          "line": 209,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 209,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9455,
                                        "end": 9459,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9460,
                                        "end": 9478,
                                        "loc": {
                                          "start": {
                                            "line": 209,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 209,
                                            "column": 53
                                          }
                                        },
                                        "name": "getObjectsOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9494,
                                    "end": 9500,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 19
                                      }
                                    },
                                    "name": "filter"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ArrowFunctionExpression",
                                    "start": 9501,
                                    "end": 9537,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 56
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": true,
                                    "async": false,
                                    "params": [
                                      {
                                        "type": "Identifier",
                                        "start": 9501,
                                        "end": 9506,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 25
                                          }
                                        },
                                        "name": "child"
                                      }
                                    ],
                                    "body": {
                                      "type": "BinaryExpression",
                                      "start": 9510,
                                      "end": 9537,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 56
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9510,
                                        "end": 9515,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 34
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9527,
                                        "end": 9537,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 56
                                          }
                                        },
                                        "name": "Constraint"
                                      }
                                    }
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9552,
                                "end": 9558,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 19
                                  }
                                },
                                "name": "filter"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9559,
                                "end": 9577,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 38
                                  }
                                },
                                "name": "isRelatedToObjects"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9588,
                      "end": 9611,
                      "loc": {
                        "start": {
                          "line": 212,
                          "column": 8
                        },
                        "end": {
                          "line": 212,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9595,
                        "end": 9610,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 15
                          },
                          "end": {
                            "line": 212,
                            "column": 30
                          }
                        },
                        "name": "constraintsList"
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 9038,
                  "end": 9104,
                  "loc": {
                    "start": {
                      "line": 201,
                      "column": 4
                    },
                    "end": {
                      "line": 201,
                      "column": 70
                    }
                  },
                  "range": [
                    9038,
                    9104
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9109,
                  "end": 9175,
                  "loc": {
                    "start": {
                      "line": 202,
                      "column": 4
                    },
                    "end": {
                      "line": 202,
                      "column": 70
                    }
                  },
                  "range": [
                    9109,
                    9175
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return ancestor of the object that is directly lying on the sketch",
                  "start": 9623,
                  "end": 9692,
                  "loc": {
                    "start": {
                      "line": 215,
                      "column": 4
                    },
                    "end": {
                      "line": 215,
                      "column": 73
                    }
                  },
                  "range": [
                    9623,
                    9692
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9697,
              "end": 9891,
              "loc": {
                "start": {
                  "line": 216,
                  "column": 4
                },
                "end": {
                  "line": 222,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9697,
                "end": 9716,
                "loc": {
                  "start": {
                    "line": 216,
                    "column": 4
                  },
                  "end": {
                    "line": 216,
                    "column": 23
                  }
                },
                "name": "getAncestorOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9716,
                "end": 9891,
                "loc": {
                  "start": {
                    "line": 216,
                    "column": 23
                  },
                  "end": {
                    "line": 222,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9717,
                    "end": 9723,
                    "loc": {
                      "start": {
                        "line": 216,
                        "column": 24
                      },
                      "end": {
                        "line": 216,
                        "column": 30
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9725,
                  "end": 9891,
                  "loc": {
                    "start": {
                      "line": 216,
                      "column": 32
                    },
                    "end": {
                      "line": 222,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9735,
                      "end": 9862,
                      "loc": {
                        "start": {
                          "line": 217,
                          "column": 8
                        },
                        "end": {
                          "line": 220,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9735,
                        "end": 9861,
                        "loc": {
                          "start": {
                            "line": 217,
                            "column": 8
                          },
                          "end": {
                            "line": 220,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9735,
                          "end": 9759,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 8
                            },
                            "end": {
                              "line": 217,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9735,
                            "end": 9741,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 8
                              },
                              "end": {
                                "line": 217,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9742,
                            "end": 9759,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 15
                              },
                              "end": {
                                "line": 217,
                                "column": 32
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9760,
                            "end": 9860,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 33
                              },
                              "end": {
                                "line": 220,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9760,
                                "end": 9768,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 41
                                  }
                                },
                                "name": "ancestor"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 9772,
                              "end": 9860,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 45
                                },
                                "end": {
                                  "line": 220,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 9786,
                                  "end": 9850,
                                  "loc": {
                                    "start": {
                                      "line": 218,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 34
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 9790,
                                    "end": 9814,
                                    "loc": {
                                      "start": {
                                        "line": 218,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 218,
                                        "column": 40
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 9790,
                                      "end": 9805,
                                      "loc": {
                                        "start": {
                                          "line": 218,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 218,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9790,
                                        "end": 9798,
                                        "loc": {
                                          "start": {
                                            "line": 218,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 218,
                                            "column": 24
                                          }
                                        },
                                        "name": "ancestor"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9799,
                                        "end": 9805,
                                        "loc": {
                                          "start": {
                                            "line": 218,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 218,
                                            "column": 31
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "ThisExpression",
                                      "start": 9810,
                                      "end": 9814,
                                      "loc": {
                                        "start": {
                                          "line": 218,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 218,
                                          "column": 40
                                        }
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9832,
                                    "end": 9850,
                                    "loc": {
                                      "start": {
                                        "line": 219,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 219,
                                        "column": 34
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 9832,
                                      "end": 9849,
                                      "loc": {
                                        "start": {
                                          "line": 219,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 219,
                                          "column": 33
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9832,
                                        "end": 9838,
                                        "loc": {
                                          "start": {
                                            "line": 219,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 219,
                                            "column": 22
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9841,
                                        "end": 9849,
                                        "loc": {
                                          "start": {
                                            "line": 219,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 219,
                                            "column": 33
                                          }
                                        },
                                        "name": "ancestor"
                                      }
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9871,
                      "end": 9885,
                      "loc": {
                        "start": {
                          "line": 221,
                          "column": 8
                        },
                        "end": {
                          "line": 221,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9878,
                        "end": 9884,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 15
                          },
                          "end": {
                            "line": 221,
                            "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": 9623,
                  "end": 9692,
                  "loc": {
                    "start": {
                      "line": 215,
                      "column": 4
                    },
                    "end": {
                      "line": 215,
                      "column": 73
                    }
                  },
                  "range": [
                    9623,
                    9692
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9897,
                  "end": 9948,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 4
                    },
                    "end": {
                      "line": 224,
                      "column": 55
                    }
                  },
                  "range": [
                    9897,
                    9948
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9953,
              "end": 10026,
              "loc": {
                "start": {
                  "line": 225,
                  "column": 4
                },
                "end": {
                  "line": 227,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9953,
                "end": 9963,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 4
                  },
                  "end": {
                    "line": 225,
                    "column": 14
                  }
                },
                "name": "isOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9963,
                "end": 10026,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 14
                  },
                  "end": {
                    "line": 227,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9964,
                    "end": 9970,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 15
                      },
                      "end": {
                        "line": 225,
                        "column": 21
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9972,
                  "end": 10026,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 23
                    },
                    "end": {
                      "line": 227,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 9982,
                      "end": 10020,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 226,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 9989,
                        "end": 10019,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 15
                          },
                          "end": {
                            "line": 226,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9989,
                          "end": 10011,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 15
                            },
                            "end": {
                              "line": 226,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9989,
                            "end": 10007,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 15
                              },
                              "end": {
                                "line": 226,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9989,
                              "end": 9993,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 15
                                },
                                "end": {
                                  "line": 226,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9994,
                              "end": 10007,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 20
                                },
                                "end": {
                                  "line": 226,
                                  "column": 33
                                }
                              },
                              "name": "sketchObjects"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10008,
                            "end": 10011,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 34
                              },
                              "end": {
                                "line": 226,
                                "column": 37
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10012,
                            "end": 10018,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 38
                              },
                              "end": {
                                "line": 226,
                                "column": 44
                              }
                            },
                            "name": "object"
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9897,
                  "end": 9948,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 4
                    },
                    "end": {
                      "line": 224,
                      "column": 55
                    }
                  },
                  "range": [
                    9897,
                    9948
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 10032,
                  "end": 10100,
                  "loc": {
                    "start": {
                      "line": 229,
                      "column": 4
                    },
                    "end": {
                      "line": 229,
                      "column": 72
                    }
                  },
                  "range": [
                    10032,
                    10100
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10105,
                  "end": 10202,
                  "loc": {
                    "start": {
                      "line": 230,
                      "column": 4
                    },
                    "end": {
                      "line": 230,
                      "column": 101
                    }
                  },
                  "range": [
                    10105,
                    10202
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10207,
                  "end": 10297,
                  "loc": {
                    "start": {
                      "line": 231,
                      "column": 4
                    },
                    "end": {
                      "line": 231,
                      "column": 94
                    }
                  },
                  "range": [
                    10207,
                    10297
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10302,
              "end": 10995,
              "loc": {
                "start": {
                  "line": 232,
                  "column": 4
                },
                "end": {
                  "line": 244,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10302,
                "end": 10314,
                "loc": {
                  "start": {
                    "line": 232,
                    "column": 4
                  },
                  "end": {
                    "line": 232,
                    "column": 16
                  }
                },
                "name": "addAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10314,
                "end": 10995,
                "loc": {
                  "start": {
                    "line": 232,
                    "column": 16
                  },
                  "end": {
                    "line": 244,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10315,
                    "end": 10322,
                    "loc": {
                      "start": {
                        "line": 232,
                        "column": 17
                      },
                      "end": {
                        "line": 232,
                        "column": 24
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 10322,
                        "end": 10335,
                        "loc": {
                          "start": {
                            "line": 232,
                            "column": 24
                          },
                          "end": {
                            "line": 232,
                            "column": 37
                          }
                        },
                        "range": [
                          10322,
                          10335
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10337,
                  "end": 10995,
                  "loc": {
                    "start": {
                      "line": 232,
                      "column": 39
                    },
                    "end": {
                      "line": 244,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10347,
                      "end": 10376,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 233,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10347,
                        "end": 10375,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 8
                          },
                          "end": {
                            "line": 233,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 10347,
                          "end": 10354,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 8
                            },
                            "end": {
                              "line": 233,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 10357,
                          "end": 10375,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 18
                            },
                            "end": {
                              "line": 233,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10357,
                            "end": 10366,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 18
                              },
                              "end": {
                                "line": 233,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 10357,
                              "end": 10359,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 18
                                },
                                "end": {
                                  "line": 233,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10360,
                              "end": 10366,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 21
                                },
                                "end": {
                                  "line": 233,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 10367,
                              "end": 10374,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 28
                                },
                                "end": {
                                  "line": 233,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10385,
                      "end": 10415,
                      "loc": {
                        "start": {
                          "line": 234,
                          "column": 8
                        },
                        "end": {
                          "line": 234,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10389,
                          "end": 10414,
                          "loc": {
                            "start": {
                              "line": 234,
                              "column": 12
                            },
                            "end": {
                              "line": 234,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10389,
                            "end": 10393,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 12
                              },
                              "end": {
                                "line": 234,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10396,
                            "end": 10414,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 19
                              },
                              "end": {
                                "line": 234,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10396,
                              "end": 10409,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 19
                                },
                                "end": {
                                  "line": 234,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10396,
                                "end": 10400,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10401,
                                "end": 10409,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10410,
                              "end": 10414,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 33
                                },
                                "end": {
                                  "line": 234,
                                  "column": 37
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " we can't automatically remove objects from the sketch because",
                          "start": 10424,
                          "end": 10488,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 8
                            },
                            "end": {
                              "line": 235,
                              "column": 72
                            }
                          },
                          "range": [
                            10424,
                            10488
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10497,
                          "end": 10564,
                          "loc": {
                            "start": {
                              "line": 236,
                              "column": 8
                            },
                            "end": {
                              "line": 236,
                              "column": 75
                            }
                          },
                          "range": [
                            10497,
                            10564
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 10573,
                      "end": 10736,
                      "loc": {
                        "start": {
                          "line": 237,
                          "column": 8
                        },
                        "end": {
                          "line": 238,
                          "column": 85
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 10577,
                        "end": 10649,
                        "loc": {
                          "start": {
                            "line": 237,
                            "column": 12
                          },
                          "end": {
                            "line": 237,
                            "column": 84
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10577,
                          "end": 10589,
                          "loc": {
                            "start": {
                              "line": 237,
                              "column": 12
                            },
                            "end": {
                              "line": 237,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10577,
                            "end": 10584,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 12
                              },
                              "end": {
                                "line": 237,
                                "column": 19
                              }
                            },
                            "name": "objects",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10585,
                            "end": 10589,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 20
                              },
                              "end": {
                                "line": 237,
                                "column": 24
                              }
                            },
                            "name": "some"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 10590,
                            "end": 10642,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 25
                              },
                              "end": {
                                "line": 237,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10599,
                                "end": 10605,
                                "loc": {
                                  "start": {
                                    "line": 237,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 237,
                                    "column": 40
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10607,
                              "end": 10642,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 42
                                },
                                "end": {
                                  "line": 237,
                                  "column": 77
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 10609,
                                  "end": 10640,
                                  "loc": {
                                    "start": {
                                      "line": 237,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 237,
                                      "column": 75
                                    }
                                  },
                                  "argument": {
                                    "type": "CallExpression",
                                    "start": 10616,
                                    "end": 10639,
                                    "loc": {
                                      "start": {
                                        "line": 237,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 237,
                                        "column": 74
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10616,
                                      "end": 10631,
                                      "loc": {
                                        "start": {
                                          "line": 237,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 237,
                                          "column": 66
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10616,
                                        "end": 10620,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 237,
                                            "column": 55
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10621,
                                        "end": 10631,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 237,
                                            "column": 66
                                          }
                                        },
                                        "name": "isOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10632,
                                        "end": 10638,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 237,
                                            "column": 73
                                          }
                                        },
                                        "name": "object"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 10644,
                            "end": 10648,
                            "loc": {
                              "start": {
                                "line": 237,
                                "column": 79
                              },
                              "end": {
                                "line": 237,
                                "column": 83
                              }
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ThrowStatement",
                        "start": 10663,
                        "end": 10736,
                        "loc": {
                          "start": {
                            "line": 238,
                            "column": 12
                          },
                          "end": {
                            "line": 238,
                            "column": 85
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 10669,
                          "end": 10735,
                          "loc": {
                            "start": {
                              "line": 238,
                              "column": 18
                            },
                            "end": {
                              "line": 238,
                              "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": 10424,
                          "end": 10488,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 8
                            },
                            "end": {
                              "line": 235,
                              "column": 72
                            }
                          },
                          "range": [
                            10424,
                            10488
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10497,
                          "end": 10564,
                          "loc": {
                            "start": {
                              "line": 236,
                              "column": 8
                            },
                            "end": {
                              "line": 236,
                              "column": 75
                            }
                          },
                          "range": [
                            10497,
                            10564
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10745,
                      "end": 10989,
                      "loc": {
                        "start": {
                          "line": 239,
                          "column": 8
                        },
                        "end": {
                          "line": 243,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10745,
                        "end": 10988,
                        "loc": {
                          "start": {
                            "line": 239,
                            "column": 8
                          },
                          "end": {
                            "line": 243,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10745,
                          "end": 10760,
                          "loc": {
                            "start": {
                              "line": 239,
                              "column": 8
                            },
                            "end": {
                              "line": 239,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10745,
                            "end": 10752,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 8
                              },
                              "end": {
                                "line": 239,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10753,
                            "end": 10760,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 16
                              },
                              "end": {
                                "line": 239,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 10761,
                            "end": 10987,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 24
                              },
                              "end": {
                                "line": 243,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10761,
                                "end": 10764,
                                "loc": {
                                  "start": {
                                    "line": 239,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 239,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10768,
                              "end": 10987,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 31
                                },
                                "end": {
                                  "line": 243,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10782,
                                  "end": 10796,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 10782,
                                    "end": 10795,
                                    "loc": {
                                      "start": {
                                        "line": 240,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 240,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10782,
                                      "end": 10790,
                                      "loc": {
                                        "start": {
                                          "line": 240,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 240,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10782,
                                        "end": 10786,
                                        "loc": {
                                          "start": {
                                            "line": 240,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 240,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10787,
                                        "end": 10790,
                                        "loc": {
                                          "start": {
                                            "line": 240,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 240,
                                            "column": 20
                                          }
                                        },
                                        "name": "add"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10791,
                                        "end": 10794,
                                        "loc": {
                                          "start": {
                                            "line": 240,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 240,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: some auxilliary objects have custom visualization system (e.g. sketch grid and box)",
                                      "start": 10809,
                                      "end": 10900,
                                      "loc": {
                                        "start": {
                                          "line": 241,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 241,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10809,
                                        10900
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "TryStatement",
                                  "start": 10913,
                                  "end": 10977,
                                  "loc": {
                                    "start": {
                                      "line": 242,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 242,
                                      "column": 76
                                    }
                                  },
                                  "block": {
                                    "type": "BlockStatement",
                                    "start": 10917,
                                    "end": 10963,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 62
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 10919,
                                        "end": 10961,
                                        "loc": {
                                          "start": {
                                            "line": 242,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 242,
                                            "column": 60
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 10919,
                                          "end": 10960,
                                          "loc": {
                                            "start": {
                                              "line": 242,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 242,
                                              "column": 59
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 10919,
                                            "end": 10949,
                                            "loc": {
                                              "start": {
                                                "line": 242,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 242,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 10919,
                                              "end": 10927,
                                              "loc": {
                                                "start": {
                                                  "line": 242,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 242,
                                                  "column": 26
                                                }
                                              },
                                              "name": "Sketcher",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10928,
                                              "end": 10949,
                                              "loc": {
                                                "start": {
                                                  "line": 242,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 242,
                                                  "column": 48
                                                }
                                              },
                                              "name": "registerVisualization"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 10950,
                                              "end": 10954,
                                              "loc": {
                                                "start": {
                                                  "line": 242,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 242,
                                                  "column": 53
                                                }
                                              },
                                              "name": "view"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 10956,
                                              "end": 10959,
                                              "loc": {
                                                "start": {
                                                  "line": 242,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 242,
                                                  "column": 58
                                                }
                                              },
                                              "name": "obj"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": null
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "handler": {
                                    "type": "CatchClause",
                                    "start": 10964,
                                    "end": 10977,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 76
                                      }
                                    },
                                    "param": {
                                      "type": "Identifier",
                                      "start": 10970,
                                      "end": 10973,
                                      "loc": {
                                        "start": {
                                          "line": 242,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 242,
                                          "column": 72
                                        }
                                      },
                                      "name": "err"
                                    },
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 10975,
                                      "end": 10977,
                                      "loc": {
                                        "start": {
                                          "line": 242,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 242,
                                          "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": 10809,
                                      "end": 10900,
                                      "loc": {
                                        "start": {
                                          "line": 241,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 241,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10809,
                                        10900
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 10322,
                      "end": 10335,
                      "loc": {
                        "start": {
                          "line": 232,
                          "column": 24
                        },
                        "end": {
                          "line": 232,
                          "column": 37
                        }
                      },
                      "range": [
                        10322,
                        10335
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 10032,
                  "end": 10100,
                  "loc": {
                    "start": {
                      "line": 229,
                      "column": 4
                    },
                    "end": {
                      "line": 229,
                      "column": 72
                    }
                  },
                  "range": [
                    10032,
                    10100
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10105,
                  "end": 10202,
                  "loc": {
                    "start": {
                      "line": 230,
                      "column": 4
                    },
                    "end": {
                      "line": 230,
                      "column": 101
                    }
                  },
                  "range": [
                    10105,
                    10202
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10207,
                  "end": 10297,
                  "loc": {
                    "start": {
                      "line": 231,
                      "column": 4
                    },
                    "end": {
                      "line": 231,
                      "column": 94
                    }
                  },
                  "range": [
                    10207,
                    10297
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 11001,
                  "end": 11053,
                  "loc": {
                    "start": {
                      "line": 246,
                      "column": 4
                    },
                    "end": {
                      "line": 246,
                      "column": 56
                    }
                  },
                  "range": [
                    11001,
                    11053
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11058,
              "end": 11255,
              "loc": {
                "start": {
                  "line": 247,
                  "column": 4
                },
                "end": {
                  "line": 253,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11058,
                "end": 11073,
                "loc": {
                  "start": {
                    "line": 247,
                    "column": 4
                  },
                  "end": {
                    "line": 247,
                    "column": 19
                  }
                },
                "name": "removeAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11073,
                "end": 11255,
                "loc": {
                  "start": {
                    "line": 247,
                    "column": 19
                  },
                  "end": {
                    "line": 253,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11074,
                    "end": 11081,
                    "loc": {
                      "start": {
                        "line": 247,
                        "column": 20
                      },
                      "end": {
                        "line": 247,
                        "column": 27
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 11081,
                        "end": 11094,
                        "loc": {
                          "start": {
                            "line": 247,
                            "column": 27
                          },
                          "end": {
                            "line": 247,
                            "column": 40
                          }
                        },
                        "range": [
                          11081,
                          11094
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11096,
                  "end": 11255,
                  "loc": {
                    "start": {
                      "line": 247,
                      "column": 42
                    },
                    "end": {
                      "line": 253,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11106,
                      "end": 11135,
                      "loc": {
                        "start": {
                          "line": 248,
                          "column": 8
                        },
                        "end": {
                          "line": 248,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11106,
                        "end": 11134,
                        "loc": {
                          "start": {
                            "line": 248,
                            "column": 8
                          },
                          "end": {
                            "line": 248,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11106,
                          "end": 11113,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 8
                            },
                            "end": {
                              "line": 248,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 11116,
                          "end": 11134,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 18
                            },
                            "end": {
                              "line": 248,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11116,
                            "end": 11125,
                            "loc": {
                              "start": {
                                "line": 248,
                                "column": 18
                              },
                              "end": {
                                "line": 248,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 11116,
                              "end": 11118,
                              "loc": {
                                "start": {
                                  "line": 248,
                                  "column": 18
                                },
                                "end": {
                                  "line": 248,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11119,
                              "end": 11125,
                              "loc": {
                                "start": {
                                  "line": 248,
                                  "column": 21
                                },
                                "end": {
                                  "line": 248,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11126,
                              "end": 11133,
                              "loc": {
                                "start": {
                                  "line": 248,
                                  "column": 28
                                },
                                "end": {
                                  "line": 248,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11144,
                      "end": 11174,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 8
                        },
                        "end": {
                          "line": 249,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11148,
                          "end": 11173,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 12
                            },
                            "end": {
                              "line": 249,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11148,
                            "end": 11152,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 12
                              },
                              "end": {
                                "line": 249,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11155,
                            "end": 11173,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 19
                              },
                              "end": {
                                "line": 249,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11155,
                              "end": 11168,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 19
                                },
                                "end": {
                                  "line": 249,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11155,
                                "end": 11159,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11160,
                                "end": 11168,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11169,
                              "end": 11173,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 33
                                },
                                "end": {
                                  "line": 249,
                                  "column": 37
                                }
                              },
                              "name": "view"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11183,
                      "end": 11249,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 8
                        },
                        "end": {
                          "line": 252,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11183,
                        "end": 11248,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 8
                          },
                          "end": {
                            "line": 252,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11183,
                          "end": 11198,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 8
                            },
                            "end": {
                              "line": 250,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11183,
                            "end": 11190,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 8
                              },
                              "end": {
                                "line": 250,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11191,
                            "end": 11198,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 16
                              },
                              "end": {
                                "line": 250,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11199,
                            "end": 11247,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 24
                              },
                              "end": {
                                "line": 252,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11199,
                                "end": 11202,
                                "loc": {
                                  "start": {
                                    "line": 250,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 250,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11206,
                              "end": 11247,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 31
                                },
                                "end": {
                                  "line": 252,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11220,
                                  "end": 11237,
                                  "loc": {
                                    "start": {
                                      "line": 251,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 251,
                                      "column": 29
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11220,
                                    "end": 11236,
                                    "loc": {
                                      "start": {
                                        "line": 251,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 251,
                                        "column": 28
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11220,
                                      "end": 11231,
                                      "loc": {
                                        "start": {
                                          "line": 251,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 251,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11220,
                                        "end": 11224,
                                        "loc": {
                                          "start": {
                                            "line": 251,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 251,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11225,
                                        "end": 11231,
                                        "loc": {
                                          "start": {
                                            "line": 251,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 251,
                                            "column": 23
                                          }
                                        },
                                        "name": "remove"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11232,
                                        "end": 11235,
                                        "loc": {
                                          "start": {
                                            "line": 251,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 251,
                                            "column": 27
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 11081,
                      "end": 11094,
                      "loc": {
                        "start": {
                          "line": 247,
                          "column": 27
                        },
                        "end": {
                          "line": 247,
                          "column": 40
                        }
                      },
                      "range": [
                        11081,
                        11094
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 11001,
                  "end": 11053,
                  "loc": {
                    "start": {
                      "line": 246,
                      "column": 4
                    },
                    "end": {
                      "line": 246,
                      "column": 56
                    }
                  },
                  "range": [
                    11001,
                    11053
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " customize ClassCadObject interface add/remove member function to track sketchObjects",
                  "start": 11261,
                  "end": 11348,
                  "loc": {
                    "start": {
                      "line": 255,
                      "column": 4
                    },
                    "end": {
                      "line": 255,
                      "column": 91
                    }
                  },
                  "range": [
                    11261,
                    11348
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11353,
              "end": 11580,
              "loc": {
                "start": {
                  "line": 256,
                  "column": 4
                },
                "end": {
                  "line": 260,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11353,
                "end": 11362,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 4
                  },
                  "end": {
                    "line": 256,
                    "column": 13
                  }
                },
                "name": "addMember",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11362,
                "end": 11580,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 13
                  },
                  "end": {
                    "line": 260,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11363,
                    "end": 11369,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 14
                      },
                      "end": {
                        "line": 256,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11371,
                  "end": 11580,
                  "loc": {
                    "start": {
                      "line": 256,
                      "column": 22
                    },
                    "end": {
                      "line": 260,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11381,
                      "end": 11439,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 8
                        },
                        "end": {
                          "line": 257,
                          "column": 66
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11381,
                        "end": 11438,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 8
                          },
                          "end": {
                            "line": 257,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11381,
                          "end": 11421,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11381,
                            "end": 11415,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 8
                              },
                              "end": {
                                "line": 257,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11381,
                              "end": 11405,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 8
                                },
                                "end": {
                                  "line": 257,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11381,
                                "end": 11395,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 22
                                  }
                                },
                                "name": "ClassCadObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11396,
                                "end": 11405,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 32
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11406,
                              "end": 11415,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 33
                                },
                                "end": {
                                  "line": 257,
                                  "column": 42
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11416,
                            "end": 11421,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 43
                              },
                              "end": {
                                "line": 257,
                                "column": 48
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 11422,
                            "end": 11426,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 49
                              },
                              "end": {
                                "line": 257,
                                "column": 53
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 11428,
                            "end": 11437,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 55
                              },
                              "end": {
                                "line": 257,
                                "column": 64
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 11448,
                      "end": 11574,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 8
                        },
                        "end": {
                          "line": 259,
                          "column": 73
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11452,
                        "end": 11499,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 12
                          },
                          "end": {
                            "line": 258,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 11452,
                          "end": 11483,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 12
                            },
                            "end": {
                              "line": 258,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11452,
                            "end": 11478,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 12
                              },
                              "end": {
                                "line": 258,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11452,
                              "end": 11467,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 12
                                },
                                "end": {
                                  "line": 258,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11452,
                                "end": 11458,
                                "loc": {
                                  "start": {
                                    "line": 258,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 258,
                                    "column": 18
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11459,
                                "end": 11467,
                                "loc": {
                                  "start": {
                                    "line": 258,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 258,
                                    "column": 27
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11468,
                              "end": 11478,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 28
                                },
                                "end": {
                                  "line": 258,
                                  "column": 38
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11479,
                            "end": 11483,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 39
                              },
                              "end": {
                                "line": 258,
                                "column": 43
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 11488,
                          "end": 11499,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 48
                            },
                            "end": {
                              "line": 258,
                              "column": 59
                            }
                          },
                          "value": "objectMem",
                          "rawValue": "objectMem",
                          "raw": "'objectMem'"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11513,
                        "end": 11574,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 12
                          },
                          "end": {
                            "line": 259,
                            "column": 73
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 11513,
                          "end": 11573,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 12
                            },
                            "end": {
                              "line": 259,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11513,
                            "end": 11529,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 12
                              },
                              "end": {
                                "line": 259,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11513,
                              "end": 11517,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 12
                                },
                                "end": {
                                  "line": 259,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11518,
                              "end": 11529,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 17
                                },
                                "end": {
                                  "line": 259,
                                  "column": 28
                                }
                              },
                              "name": "addToSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11530,
                              "end": 11536,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 29
                                },
                                "end": {
                                  "line": 259,
                                  "column": 35
                                }
                              },
                              "name": "member"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 11538,
                              "end": 11572,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 37
                                },
                                "end": {
                                  "line": 259,
                                  "column": 71
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 11539,
                                  "end": 11554,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 53
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11539,
                                    "end": 11547,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 46
                                      }
                                    },
                                    "name": "onServer"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11549,
                                    "end": 11554,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 53
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 11556,
                                  "end": 11571,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11556,
                                    "end": 11564,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 63
                                      }
                                    },
                                    "name": "onClient"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11566,
                                    "end": 11571,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 259,
                                        "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": 11261,
                  "end": 11348,
                  "loc": {
                    "start": {
                      "line": 255,
                      "column": 4
                    },
                    "end": {
                      "line": 255,
                      "column": 91
                    }
                  },
                  "range": [
                    11261,
                    11348
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11586,
              "end": 11816,
              "loc": {
                "start": {
                  "line": 262,
                  "column": 4
                },
                "end": {
                  "line": 266,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11586,
                "end": 11610,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 28
                  }
                },
                "name": "removeSuperfluousMembers"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11610,
                "end": 11816,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 28
                  },
                  "end": {
                    "line": 266,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11613,
                  "end": 11816,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 31
                    },
                    "end": {
                      "line": 266,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11623,
                      "end": 11710,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11627,
                          "end": 11709,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 12
                            },
                            "end": {
                              "line": 263,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11627,
                            "end": 11634,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 12
                              },
                              "end": {
                                "line": 263,
                                "column": 19
                              }
                            },
                            "name": "members"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11637,
                            "end": 11709,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 22
                              },
                              "end": {
                                "line": 263,
                                "column": 94
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11637,
                              "end": 11692,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 22
                                },
                                "end": {
                                  "line": 263,
                                  "column": 77
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11637,
                                "end": 11686,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11637,
                                  "end": 11661,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11637,
                                    "end": 11651,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 36
                                      }
                                    },
                                    "name": "ClassCadObject"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11652,
                                    "end": 11661,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 46
                                      }
                                    },
                                    "name": "prototype"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11662,
                                  "end": 11686,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 71
                                    }
                                  },
                                  "name": "removeSuperfluousMembers"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11687,
                                "end": 11692,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 77
                                  }
                                },
                                "name": "apply"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 11693,
                                "end": 11697,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 82
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 11699,
                                "end": 11708,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 93
                                  }
                                },
                                "name": "arguments"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11719,
                      "end": 11786,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 8
                        },
                        "end": {
                          "line": 264,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11719,
                        "end": 11785,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 8
                          },
                          "end": {
                            "line": 264,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11719,
                          "end": 11740,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 8
                            },
                            "end": {
                              "line": 264,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11719,
                            "end": 11723,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 8
                              },
                              "end": {
                                "line": 264,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11724,
                            "end": 11740,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 13
                              },
                              "end": {
                                "line": 264,
                                "column": 29
                              }
                            },
                            "name": "removeFromSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11741,
                            "end": 11748,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 30
                              },
                              "end": {
                                "line": 264,
                                "column": 37
                              }
                            },
                            "name": "members"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 11750,
                            "end": 11784,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 39
                              },
                              "end": {
                                "line": 264,
                                "column": 73
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 11751,
                                "end": 11766,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 55
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11751,
                                  "end": 11759,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 48
                                    }
                                  },
                                  "name": "onServer"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11761,
                                  "end": 11766,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 55
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 11768,
                                "end": 11783,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 72
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11768,
                                  "end": 11776,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 65
                                    }
                                  },
                                  "name": "onClient"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11778,
                                  "end": 11783,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 72
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11795,
                      "end": 11810,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11802,
                        "end": 11809,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 15
                          },
                          "end": {
                            "line": 265,
                            "column": 22
                          }
                        },
                        "name": "members"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11822,
              "end": 11878,
              "loc": {
                "start": {
                  "line": 268,
                  "column": 4
                },
                "end": {
                  "line": 270,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11822,
                "end": 11829,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 4
                  },
                  "end": {
                    "line": 268,
                    "column": 11
                  }
                },
                "name": "showBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11829,
                "end": 11878,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 11
                  },
                  "end": {
                    "line": 270,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11832,
                  "end": 11878,
                  "loc": {
                    "start": {
                      "line": 268,
                      "column": 14
                    },
                    "end": {
                      "line": 270,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11842,
                      "end": 11872,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11842,
                        "end": 11871,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 8
                          },
                          "end": {
                            "line": 269,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11842,
                          "end": 11859,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 8
                            },
                            "end": {
                              "line": 269,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11842,
                            "end": 11846,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 8
                              },
                              "end": {
                                "line": 269,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11847,
                            "end": 11859,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 13
                              },
                              "end": {
                                "line": 269,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11860,
                            "end": 11870,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 26
                              },
                              "end": {
                                "line": 269,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11860,
                              "end": 11864,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 26
                                },
                                "end": {
                                  "line": 269,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11865,
                              "end": 11870,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 31
                                },
                                "end": {
                                  "line": 269,
                                  "column": 36
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11884,
              "end": 11943,
              "loc": {
                "start": {
                  "line": 272,
                  "column": 4
                },
                "end": {
                  "line": 274,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11884,
                "end": 11891,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 4
                  },
                  "end": {
                    "line": 272,
                    "column": 11
                  }
                },
                "name": "hideBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11891,
                "end": 11943,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 11
                  },
                  "end": {
                    "line": 274,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11894,
                  "end": 11943,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 14
                    },
                    "end": {
                      "line": 274,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11904,
                      "end": 11937,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11904,
                        "end": 11936,
                        "loc": {
                          "start": {
                            "line": 273,
                            "column": 8
                          },
                          "end": {
                            "line": 273,
                            "column": 40
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11904,
                          "end": 11924,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 8
                            },
                            "end": {
                              "line": 273,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11904,
                            "end": 11908,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 8
                              },
                              "end": {
                                "line": 273,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11909,
                            "end": 11924,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 13
                              },
                              "end": {
                                "line": 273,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11925,
                            "end": 11935,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 29
                              },
                              "end": {
                                "line": 273,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11925,
                              "end": 11929,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 29
                                },
                                "end": {
                                  "line": 273,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11930,
                              "end": 11935,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 34
                                },
                                "end": {
                                  "line": 273,
                                  "column": 39
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11949,
              "end": 13120,
              "loc": {
                "start": {
                  "line": 276,
                  "column": 4
                },
                "end": {
                  "line": 309,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11949,
                "end": 11958,
                "loc": {
                  "start": {
                    "line": 276,
                    "column": 4
                  },
                  "end": {
                    "line": 276,
                    "column": 13
                  }
                },
                "name": "updateBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11958,
                "end": 13120,
                "loc": {
                  "start": {
                    "line": 276,
                    "column": 13
                  },
                  "end": {
                    "line": 309,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11961,
                  "end": 13120,
                  "loc": {
                    "start": {
                      "line": 276,
                      "column": 16
                    },
                    "end": {
                      "line": 309,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11971,
                      "end": 11996,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 8
                        },
                        "end": {
                          "line": 277,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11971,
                        "end": 11995,
                        "loc": {
                          "start": {
                            "line": 277,
                            "column": 8
                          },
                          "end": {
                            "line": 277,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11971,
                          "end": 11993,
                          "loc": {
                            "start": {
                              "line": 277,
                              "column": 8
                            },
                            "end": {
                              "line": 277,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11971,
                            "end": 11975,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 8
                              },
                              "end": {
                                "line": 277,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11976,
                            "end": 11993,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 13
                              },
                              "end": {
                                "line": 277,
                                "column": 30
                              }
                            },
                            "name": "updateMatrixWorld"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " bbox is bounding box in local to sketch coordinates",
                          "start": 12005,
                          "end": 12059,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 8
                            },
                            "end": {
                              "line": 278,
                              "column": 62
                            }
                          },
                          "range": [
                            12005,
                            12059
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12068,
                      "end": 12096,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 8
                        },
                        "end": {
                          "line": 279,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12072,
                          "end": 12095,
                          "loc": {
                            "start": {
                              "line": 279,
                              "column": 12
                            },
                            "end": {
                              "line": 279,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12072,
                            "end": 12076,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 12
                              },
                              "end": {
                                "line": 279,
                                "column": 16
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12079,
                            "end": 12095,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 19
                              },
                              "end": {
                                "line": 279,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12083,
                              "end": 12093,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 23
                                },
                                "end": {
                                  "line": 279,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12083,
                                "end": 12088,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 279,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12089,
                                "end": 12093,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 279,
                                    "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": 12005,
                          "end": 12059,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 8
                            },
                            "end": {
                              "line": 278,
                              "column": 62
                            }
                          },
                          "range": [
                            12005,
                            12059
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12105,
                      "end": 12134,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 8
                        },
                        "end": {
                          "line": 280,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12109,
                          "end": 12133,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 12
                            },
                            "end": {
                              "line": 280,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12109,
                            "end": 12111,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 12
                              },
                              "end": {
                                "line": 280,
                                "column": 14
                              }
                            },
                            "name": "v1"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12114,
                            "end": 12133,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 17
                              },
                              "end": {
                                "line": 280,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12118,
                              "end": 12131,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 21
                                },
                                "end": {
                                  "line": 280,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12118,
                                "end": 12123,
                                "loc": {
                                  "start": {
                                    "line": 280,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 280,
                                    "column": 26
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12124,
                                "end": 12131,
                                "loc": {
                                  "start": {
                                    "line": 280,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 280,
                                    "column": 34
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12143,
                      "end": 12618,
                      "loc": {
                        "start": {
                          "line": 281,
                          "column": 8
                        },
                        "end": {
                          "line": 291,
                          "column": 12
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12143,
                        "end": 12617,
                        "loc": {
                          "start": {
                            "line": 281,
                            "column": 8
                          },
                          "end": {
                            "line": 291,
                            "column": 11
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12143,
                          "end": 12176,
                          "loc": {
                            "start": {
                              "line": 281,
                              "column": 8
                            },
                            "end": {
                              "line": 281,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 12143,
                            "end": 12168,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 8
                              },
                              "end": {
                                "line": 281,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12143,
                              "end": 12166,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 8
                                },
                                "end": {
                                  "line": 281,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12143,
                                "end": 12147,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12148,
                                "end": 12166,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12169,
                            "end": 12176,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 34
                              },
                              "end": {
                                "line": 281,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 12177,
                            "end": 12616,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 42
                              },
                              "end": {
                                "line": 291,
                                "column": 10
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 12177,
                                "end": 12180,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 12184,
                              "end": 12616,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 49
                                },
                                "end": {
                                  "line": 291,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12184,
                                "end": 12203,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12184,
                                  "end": 12187,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 52
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12188,
                                  "end": 12203,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 68
                                    }
                                  },
                                  "name": "traverseVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12204,
                                  "end": 12615,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 291,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12204,
                                      "end": 12208,
                                      "loc": {
                                        "start": {
                                          "line": 281,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 281,
                                          "column": 73
                                        }
                                      },
                                      "name": "node"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12212,
                                    "end": 12615,
                                    "loc": {
                                      "start": {
                                        "line": 281,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 291,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 12226,
                                        "end": 12297,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 283,
                                            "column": 23
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 12230,
                                          "end": 12272,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 58
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 12232,
                                            "end": 12271,
                                            "loc": {
                                              "start": {
                                                "line": 282,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 282,
                                                "column": 57
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 12232,
                                              "end": 12245,
                                              "loc": {
                                                "start": {
                                                  "line": 282,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 282,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12232,
                                                "end": 12236,
                                                "loc": {
                                                  "start": {
                                                    "line": 282,
                                                    "column": 18
                                                  },
                                                  "end": {
                                                    "line": 282,
                                                    "column": 22
                                                  }
                                                },
                                                "name": "node"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12237,
                                                "end": 12245,
                                                "loc": {
                                                  "start": {
                                                    "line": 282,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 282,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 12257,
                                              "end": 12271,
                                              "loc": {
                                                "start": {
                                                  "line": 282,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 282,
                                                  "column": 57
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12257,
                                                "end": 12262,
                                                "loc": {
                                                  "start": {
                                                    "line": 282,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 282,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12263,
                                                "end": 12271,
                                                "loc": {
                                                  "start": {
                                                    "line": 282,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 282,
                                                    "column": 57
                                                  }
                                                },
                                                "name": "Geometry"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 12290,
                                          "end": 12297,
                                          "loc": {
                                            "start": {
                                              "line": 283,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 283,
                                              "column": 23
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 12310,
                                        "end": 12605,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 290,
                                            "column": 15
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 12310,
                                          "end": 12604,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 290,
                                              "column": 14
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 12310,
                                            "end": 12340,
                                            "loc": {
                                              "start": {
                                                "line": 284,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 284,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 12310,
                                              "end": 12332,
                                              "loc": {
                                                "start": {
                                                  "line": 284,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 284,
                                                  "column": 34
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 12310,
                                                "end": 12323,
                                                "loc": {
                                                  "start": {
                                                    "line": 284,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 284,
                                                    "column": 25
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 12310,
                                                  "end": 12314,
                                                  "loc": {
                                                    "start": {
                                                      "line": 284,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 284,
                                                      "column": 16
                                                    }
                                                  },
                                                  "name": "node"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 12315,
                                                  "end": 12323,
                                                  "loc": {
                                                    "start": {
                                                      "line": 284,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 284,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12324,
                                                "end": 12332,
                                                "loc": {
                                                  "start": {
                                                    "line": 284,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 284,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12333,
                                              "end": 12340,
                                              "loc": {
                                                "start": {
                                                  "line": 284,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 284,
                                                  "column": 42
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 12341,
                                              "end": 12603,
                                              "loc": {
                                                "start": {
                                                  "line": 284,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 290,
                                                  "column": 13
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": false,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 12341,
                                                  "end": 12347,
                                                  "loc": {
                                                    "start": {
                                                      "line": 284,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 284,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "vertex"
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "start": 12351,
                                                "end": 12603,
                                                "loc": {
                                                  "start": {
                                                    "line": 284,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 290,
                                                    "column": 13
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12455,
                                                    "end": 12471,
                                                    "loc": {
                                                      "start": {
                                                        "line": 286,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 286,
                                                        "column": 32
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12455,
                                                      "end": 12470,
                                                      "loc": {
                                                        "start": {
                                                          "line": 286,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 286,
                                                          "column": 31
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12455,
                                                        "end": 12462,
                                                        "loc": {
                                                          "start": {
                                                            "line": 286,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 286,
                                                            "column": 23
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12455,
                                                          "end": 12457,
                                                          "loc": {
                                                            "start": {
                                                              "line": 286,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 286,
                                                              "column": 18
                                                            }
                                                          },
                                                          "name": "v1",
                                                          "leadingComments": null
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12458,
                                                          "end": 12462,
                                                          "loc": {
                                                            "start": {
                                                              "line": 286,
                                                              "column": 19
                                                            },
                                                            "end": {
                                                              "line": 286,
                                                              "column": 23
                                                            }
                                                          },
                                                          "name": "copy"
                                                        },
                                                        "computed": false,
                                                        "leadingComments": null
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12463,
                                                          "end": 12469,
                                                          "loc": {
                                                            "start": {
                                                              "line": 286,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 286,
                                                              "column": 30
                                                            }
                                                          },
                                                          "name": "vertex"
                                                        }
                                                      ],
                                                      "leadingComments": null
                                                    },
                                                    "leadingComments": [
                                                      {
                                                        "type": "CommentLine",
                                                        "value": " translate vertex coordinates from local-to-node to local-to-sketch",
                                                        "start": 12369,
                                                        "end": 12438,
                                                        "loc": {
                                                          "start": {
                                                            "line": 285,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 285,
                                                            "column": 85
                                                          }
                                                        },
                                                        "range": [
                                                          12369,
                                                          12438
                                                        ]
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12488,
                                                    "end": 12510,
                                                    "loc": {
                                                      "start": {
                                                        "line": 287,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 287,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12488,
                                                      "end": 12509,
                                                      "loc": {
                                                        "start": {
                                                          "line": 287,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 287,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12488,
                                                        "end": 12505,
                                                        "loc": {
                                                          "start": {
                                                            "line": 287,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 287,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12488,
                                                          "end": 12492,
                                                          "loc": {
                                                            "start": {
                                                              "line": 287,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 287,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "node"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12493,
                                                          "end": 12505,
                                                          "loc": {
                                                            "start": {
                                                              "line": 287,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 287,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "localToWorld"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12506,
                                                          "end": 12508,
                                                          "loc": {
                                                            "start": {
                                                              "line": 287,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 287,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12527,
                                                    "end": 12549,
                                                    "loc": {
                                                      "start": {
                                                        "line": 288,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 288,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12527,
                                                      "end": 12548,
                                                      "loc": {
                                                        "start": {
                                                          "line": 288,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 288,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12527,
                                                        "end": 12544,
                                                        "loc": {
                                                          "start": {
                                                            "line": 288,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 288,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "start": 12527,
                                                          "end": 12531,
                                                          "loc": {
                                                            "start": {
                                                              "line": 288,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 288,
                                                              "column": 20
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12532,
                                                          "end": 12544,
                                                          "loc": {
                                                            "start": {
                                                              "line": 288,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 288,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "worldToLocal"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12545,
                                                          "end": 12547,
                                                          "loc": {
                                                            "start": {
                                                              "line": 288,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 288,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12566,
                                                    "end": 12589,
                                                    "loc": {
                                                      "start": {
                                                        "line": 289,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 289,
                                                        "column": 39
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12566,
                                                      "end": 12588,
                                                      "loc": {
                                                        "start": {
                                                          "line": 289,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 289,
                                                          "column": 38
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12566,
                                                        "end": 12584,
                                                        "loc": {
                                                          "start": {
                                                            "line": 289,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 289,
                                                            "column": 34
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12566,
                                                          "end": 12570,
                                                          "loc": {
                                                            "start": {
                                                              "line": 289,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 289,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "bbox"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12571,
                                                          "end": 12584,
                                                          "loc": {
                                                            "start": {
                                                              "line": 289,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 289,
                                                              "column": 34
                                                            }
                                                          },
                                                          "name": "expandByPoint"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12585,
                                                          "end": 12587,
                                                          "loc": {
                                                            "start": {
                                                              "line": 289,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 289,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12628,
                      "end": 12653,
                      "loc": {
                        "start": {
                          "line": 293,
                          "column": 8
                        },
                        "end": {
                          "line": 293,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12632,
                          "end": 12652,
                          "loc": {
                            "start": {
                              "line": 293,
                              "column": 12
                            },
                            "end": {
                              "line": 293,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12632,
                            "end": 12639,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 12
                              },
                              "end": {
                                "line": 293,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12642,
                            "end": 12652,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 22
                              },
                              "end": {
                                "line": 293,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12642,
                              "end": 12646,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 22
                                },
                                "end": {
                                  "line": 293,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12647,
                              "end": 12652,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 27
                                },
                                "end": {
                                  "line": 293,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12662,
                      "end": 12703,
                      "loc": {
                        "start": {
                          "line": 294,
                          "column": 8
                        },
                        "end": {
                          "line": 294,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 12662,
                        "end": 12702,
                        "loc": {
                          "start": {
                            "line": 294,
                            "column": 8
                          },
                          "end": {
                            "line": 294,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 12662,
                          "end": 12678,
                          "loc": {
                            "start": {
                              "line": 294,
                              "column": 8
                            },
                            "end": {
                              "line": 294,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12662,
                            "end": 12669,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 8
                              },
                              "end": {
                                "line": 294,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12670,
                            "end": 12678,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 16
                              },
                              "end": {
                                "line": 294,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 12681,
                          "end": 12702,
                          "loc": {
                            "start": {
                              "line": 294,
                              "column": 27
                            },
                            "end": {
                              "line": 294,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12681,
                            "end": 12685,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 27
                              },
                              "end": {
                                "line": 294,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12686,
                            "end": 12702,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 32
                              },
                              "end": {
                                "line": 294,
                                "column": 48
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 12713,
                      "end": 13114,
                      "loc": {
                        "start": {
                          "line": 296,
                          "column": 8
                        },
                        "end": {
                          "line": 308,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12717,
                        "end": 12731,
                        "loc": {
                          "start": {
                            "line": 296,
                            "column": 12
                          },
                          "end": {
                            "line": 296,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12717,
                          "end": 12729,
                          "loc": {
                            "start": {
                              "line": 296,
                              "column": 12
                            },
                            "end": {
                              "line": 296,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12717,
                            "end": 12721,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 12
                              },
                              "end": {
                                "line": 296,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12722,
                            "end": 12729,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 17
                              },
                              "end": {
                                "line": 296,
                                "column": 24
                              }
                            },
                            "name": "isEmpty"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 12733,
                        "end": 12871,
                        "loc": {
                          "start": {
                            "line": 296,
                            "column": 28
                          },
                          "end": {
                            "line": 300,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12782,
                            "end": 12818,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 12
                              },
                              "end": {
                                "line": 298,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12782,
                              "end": 12817,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 12
                                },
                                "end": {
                                  "line": 298,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12782,
                                "end": 12799,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12782,
                                  "end": 12795,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12782,
                                    "end": 12789,
                                    "loc": {
                                      "start": {
                                        "line": 298,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 298,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12790,
                                    "end": 12795,
                                    "loc": {
                                      "start": {
                                        "line": 298,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 298,
                                        "column": 25
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12796,
                                  "end": 12799,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 29
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12800,
                                  "end": 12804,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 34
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12806,
                                  "end": 12810,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 40
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12812,
                                  "end": 12816,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 46
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " (nothing on sketch)",
                                "start": 12747,
                                "end": 12769,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 34
                                  }
                                },
                                "range": [
                                  12747,
                                  12769
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12831,
                            "end": 12861,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 12
                              },
                              "end": {
                                "line": 299,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12831,
                              "end": 12860,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 12
                                },
                                "end": {
                                  "line": 299,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12831,
                                "end": 12851,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12831,
                                  "end": 12847,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12831,
                                    "end": 12838,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12839,
                                    "end": 12847,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 28
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12848,
                                  "end": 12851,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 32
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12852,
                                  "end": 12853,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12855,
                                  "end": 12856,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12858,
                                  "end": 12859,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 40
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 12885,
                        "end": 13114,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 13
                          },
                          "end": {
                            "line": 308,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12927,
                            "end": 12946,
                            "loc": {
                              "start": {
                                "line": 303,
                                "column": 12
                              },
                              "end": {
                                "line": 303,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12927,
                              "end": 12945,
                              "loc": {
                                "start": {
                                  "line": 303,
                                  "column": 12
                                },
                                "end": {
                                  "line": 303,
                                  "column": 30
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12927,
                                "end": 12937,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12927,
                                  "end": 12935,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12927,
                                    "end": 12931,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12932,
                                    "end": 12935,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 20
                                      }
                                    },
                                    "name": "min"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12936,
                                  "end": 12937,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "right": {
                                "type": "UnaryExpression",
                                "start": 12940,
                                "end": 12945,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 30
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 12941,
                                  "end": 12945,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 30
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              },
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "make box flat",
                                "start": 12899,
                                "end": 12914,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 27
                                  }
                                },
                                "range": [
                                  12899,
                                  12914
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12959,
                            "end": 12977,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 12
                              },
                              "end": {
                                "line": 304,
                                "column": 30
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12959,
                              "end": 12976,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 12
                                },
                                "end": {
                                  "line": 304,
                                  "column": 29
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12959,
                                "end": 12969,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12959,
                                  "end": 12967,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12959,
                                    "end": 12963,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12964,
                                    "end": 12967,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 20
                                      }
                                    },
                                    "name": "max"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12968,
                                  "end": 12969,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 12972,
                                "end": 12976,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 29
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "1e-3"
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12990,
                                "end": 13023,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12990,
                                  13023
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13036,
                            "end": 13061,
                            "loc": {
                              "start": {
                                "line": 306,
                                "column": 12
                              },
                              "end": {
                                "line": 306,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13036,
                              "end": 13060,
                              "loc": {
                                "start": {
                                  "line": 306,
                                  "column": 12
                                },
                                "end": {
                                  "line": 306,
                                  "column": 36
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13036,
                                "end": 13045,
                                "loc": {
                                  "start": {
                                    "line": 306,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 306,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13036,
                                  "end": 13040,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox",
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13041,
                                  "end": 13045,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 21
                                    }
                                  },
                                  "name": "size"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13046,
                                  "end": 13059,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13046,
                                    "end": 13053,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 29
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13054,
                                    "end": 13059,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 35
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12990,
                                "end": 13023,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12990,
                                  13023
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13074,
                            "end": 13104,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 12
                              },
                              "end": {
                                "line": 307,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13074,
                              "end": 13103,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 12
                                },
                                "end": {
                                  "line": 307,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13074,
                                "end": 13085,
                                "loc": {
                                  "start": {
                                    "line": 307,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 307,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13074,
                                  "end": 13078,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13079,
                                  "end": 13085,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 23
                                    }
                                  },
                                  "name": "center"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13086,
                                  "end": 13102,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13086,
                                    "end": 13093,
                                    "loc": {
                                      "start": {
                                        "line": 307,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 307,
                                        "column": 31
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13094,
                                    "end": 13102,
                                    "loc": {
                                      "start": {
                                        "line": 307,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 307,
                                        "column": 40
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13126,
              "end": 13485,
              "loc": {
                "start": {
                  "line": 311,
                  "column": 4
                },
                "end": {
                  "line": 322,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13126,
                "end": 13137,
                "loc": {
                  "start": {
                    "line": 311,
                    "column": 4
                  },
                  "end": {
                    "line": 311,
                    "column": 15
                  }
                },
                "name": "infiniteBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13137,
                "end": 13485,
                "loc": {
                  "start": {
                    "line": 311,
                    "column": 15
                  },
                  "end": {
                    "line": 322,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13140,
                  "end": 13485,
                  "loc": {
                    "start": {
                      "line": 311,
                      "column": 18
                    },
                    "end": {
                      "line": 322,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13150,
                      "end": 13178,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 8
                        },
                        "end": {
                          "line": 312,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13154,
                          "end": 13177,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 12
                            },
                            "end": {
                              "line": 312,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13154,
                            "end": 13158,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 12
                              },
                              "end": {
                                "line": 312,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 13161,
                            "end": 13177,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 19
                              },
                              "end": {
                                "line": 312,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13165,
                              "end": 13175,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 23
                                },
                                "end": {
                                  "line": 312,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13165,
                                "end": 13170,
                                "loc": {
                                  "start": {
                                    "line": 312,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 312,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13171,
                                "end": 13175,
                                "loc": {
                                  "start": {
                                    "line": 312,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 312,
                                    "column": 33
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13187,
                      "end": 13216,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 8
                        },
                        "end": {
                          "line": 313,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13187,
                        "end": 13215,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 8
                          },
                          "end": {
                            "line": 313,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13187,
                          "end": 13199,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 8
                            },
                            "end": {
                              "line": 313,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13187,
                            "end": 13195,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 8
                              },
                              "end": {
                                "line": 313,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13187,
                              "end": 13191,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 8
                                },
                                "end": {
                                  "line": 313,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13192,
                              "end": 13195,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 13
                                },
                                "end": {
                                  "line": 313,
                                  "column": 16
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13196,
                            "end": 13199,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 17
                              },
                              "end": {
                                "line": 313,
                                "column": 20
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13200,
                            "end": 13203,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 21
                              },
                              "end": {
                                "line": 313,
                                "column": 24
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13205,
                            "end": 13208,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 26
                              },
                              "end": {
                                "line": 313,
                                "column": 29
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13210,
                            "end": 13214,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 31
                              },
                              "end": {
                                "line": 313,
                                "column": 35
                              }
                            },
                            "value": 0.001,
                            "rawValue": 0.001,
                            "raw": "1e-3"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13225,
                      "end": 13249,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13225,
                        "end": 13248,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 8
                          },
                          "end": {
                            "line": 314,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13225,
                          "end": 13238,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 8
                            },
                            "end": {
                              "line": 314,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13225,
                            "end": 13233,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 8
                              },
                              "end": {
                                "line": 314,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13225,
                              "end": 13229,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 8
                                },
                                "end": {
                                  "line": 314,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13230,
                              "end": 13233,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 13
                                },
                                "end": {
                                  "line": 314,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13234,
                            "end": 13238,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 17
                              },
                              "end": {
                                "line": 314,
                                "column": 21
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13239,
                            "end": 13247,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 22
                              },
                              "end": {
                                "line": 314,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13239,
                              "end": 13243,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 22
                                },
                                "end": {
                                  "line": 314,
                                  "column": 26
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13244,
                              "end": 13247,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 27
                                },
                                "end": {
                                  "line": 314,
                                  "column": 30
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13258,
                      "end": 13276,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 8
                        },
                        "end": {
                          "line": 315,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13258,
                        "end": 13275,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 8
                          },
                          "end": {
                            "line": 315,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13258,
                          "end": 13273,
                          "loc": {
                            "start": {
                              "line": 315,
                              "column": 8
                            },
                            "end": {
                              "line": 315,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13258,
                            "end": 13266,
                            "loc": {
                              "start": {
                                "line": 315,
                                "column": 8
                              },
                              "end": {
                                "line": 315,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13258,
                              "end": 13262,
                              "loc": {
                                "start": {
                                  "line": 315,
                                  "column": 8
                                },
                                "end": {
                                  "line": 315,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13263,
                              "end": 13266,
                              "loc": {
                                "start": {
                                  "line": 315,
                                  "column": 13
                                },
                                "end": {
                                  "line": 315,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13267,
                            "end": 13273,
                            "loc": {
                              "start": {
                                "line": 315,
                                "column": 17
                              },
                              "end": {
                                "line": 315,
                                "column": 23
                              }
                            },
                            "name": "negate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13286,
                      "end": 13311,
                      "loc": {
                        "start": {
                          "line": 317,
                          "column": 8
                        },
                        "end": {
                          "line": 317,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13290,
                          "end": 13310,
                          "loc": {
                            "start": {
                              "line": 317,
                              "column": 12
                            },
                            "end": {
                              "line": 317,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13290,
                            "end": 13297,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 12
                              },
                              "end": {
                                "line": 317,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13300,
                            "end": 13310,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 22
                              },
                              "end": {
                                "line": 317,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13300,
                              "end": 13304,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 22
                                },
                                "end": {
                                  "line": 317,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13305,
                              "end": 13310,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 27
                                },
                                "end": {
                                  "line": 317,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13320,
                      "end": 13364,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 8
                        },
                        "end": {
                          "line": 318,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13320,
                        "end": 13363,
                        "loc": {
                          "start": {
                            "line": 318,
                            "column": 8
                          },
                          "end": {
                            "line": 318,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13320,
                          "end": 13336,
                          "loc": {
                            "start": {
                              "line": 318,
                              "column": 8
                            },
                            "end": {
                              "line": 318,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13320,
                            "end": 13327,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 8
                              },
                              "end": {
                                "line": 318,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13328,
                            "end": 13336,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 16
                              },
                              "end": {
                                "line": 318,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 13339,
                          "end": 13363,
                          "loc": {
                            "start": {
                              "line": 318,
                              "column": 27
                            },
                            "end": {
                              "line": 318,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13339,
                            "end": 13343,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 27
                              },
                              "end": {
                                "line": 318,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13344,
                            "end": 13363,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 32
                              },
                              "end": {
                                "line": 318,
                                "column": 51
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13373,
                          "end": 13406,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 41
                            }
                          },
                          "range": [
                            13373,
                            13406
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13415,
                      "end": 13440,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 8
                        },
                        "end": {
                          "line": 320,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13415,
                        "end": 13439,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 8
                          },
                          "end": {
                            "line": 320,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13415,
                          "end": 13424,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 8
                            },
                            "end": {
                              "line": 320,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13415,
                            "end": 13419,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 8
                              },
                              "end": {
                                "line": 320,
                                "column": 12
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13420,
                            "end": 13424,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 13
                              },
                              "end": {
                                "line": 320,
                                "column": 17
                              }
                            },
                            "name": "size"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13425,
                            "end": 13438,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 18
                              },
                              "end": {
                                "line": 320,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13425,
                              "end": 13432,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 18
                                },
                                "end": {
                                  "line": 320,
                                  "column": 25
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13433,
                              "end": 13438,
                              "loc": {
                                "start": {
                                  "line": 320,
                                  "column": 26
                                },
                                "end": {
                                  "line": 320,
                                  "column": 31
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13373,
                          "end": 13406,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 41
                            }
                          },
                          "range": [
                            13373,
                            13406
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13449,
                      "end": 13479,
                      "loc": {
                        "start": {
                          "line": 321,
                          "column": 8
                        },
                        "end": {
                          "line": 321,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13449,
                        "end": 13478,
                        "loc": {
                          "start": {
                            "line": 321,
                            "column": 8
                          },
                          "end": {
                            "line": 321,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13449,
                          "end": 13460,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13449,
                            "end": 13453,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 8
                              },
                              "end": {
                                "line": 321,
                                "column": 12
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13454,
                            "end": 13460,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 13
                              },
                              "end": {
                                "line": 321,
                                "column": 19
                              }
                            },
                            "name": "center"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13461,
                            "end": 13477,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 20
                              },
                              "end": {
                                "line": 321,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13461,
                              "end": 13468,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 20
                                },
                                "end": {
                                  "line": 321,
                                  "column": 27
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13469,
                              "end": 13477,
                              "loc": {
                                "start": {
                                  "line": 321,
                                  "column": 28
                                },
                                "end": {
                                  "line": 321,
                                  "column": 36
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13491,
              "end": 13591,
              "loc": {
                "start": {
                  "line": 324,
                  "column": 4
                },
                "end": {
                  "line": 327,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13491,
                "end": 13499,
                "loc": {
                  "start": {
                    "line": 324,
                    "column": 4
                  },
                  "end": {
                    "line": 324,
                    "column": 12
                  }
                },
                "name": "showGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13499,
                "end": 13591,
                "loc": {
                  "start": {
                    "line": 324,
                    "column": 12
                  },
                  "end": {
                    "line": 327,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13502,
                  "end": 13591,
                  "loc": {
                    "start": {
                      "line": 324,
                      "column": 15
                    },
                    "end": {
                      "line": 327,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13512,
                      "end": 13558,
                      "loc": {
                        "start": {
                          "line": 325,
                          "column": 8
                        },
                        "end": {
                          "line": 325,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13512,
                        "end": 13557,
                        "loc": {
                          "start": {
                            "line": 325,
                            "column": 8
                          },
                          "end": {
                            "line": 325,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13512,
                          "end": 13529,
                          "loc": {
                            "start": {
                              "line": 325,
                              "column": 8
                            },
                            "end": {
                              "line": 325,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13512,
                            "end": 13516,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 8
                              },
                              "end": {
                                "line": 325,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13517,
                            "end": 13529,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 13
                              },
                              "end": {
                                "line": 325,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13530,
                            "end": 13556,
                            "loc": {
                              "start": {
                                "line": 325,
                                "column": 26
                              },
                              "end": {
                                "line": 325,
                                "column": 52
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13531,
                                "end": 13542,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13531,
                                  "end": 13535,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13536,
                                  "end": 13542,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 38
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13544,
                                "end": 13555,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13544,
                                  "end": 13548,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 44
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13549,
                                  "end": 13555,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 51
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13567,
                      "end": 13585,
                      "loc": {
                        "start": {
                          "line": 326,
                          "column": 8
                        },
                        "end": {
                          "line": 326,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13567,
                        "end": 13584,
                        "loc": {
                          "start": {
                            "line": 326,
                            "column": 8
                          },
                          "end": {
                            "line": 326,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13567,
                          "end": 13576,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 8
                            },
                            "end": {
                              "line": 326,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13567,
                            "end": 13571,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 8
                              },
                              "end": {
                                "line": 326,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13572,
                            "end": 13576,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 13
                              },
                              "end": {
                                "line": 326,
                                "column": 17
                              }
                            },
                            "name": "zoom"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 13579,
                          "end": 13584,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 20
                            },
                            "end": {
                              "line": 326,
                              "column": 25
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 13581,
                            "end": 13584,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 22
                              },
                              "end": {
                                "line": 326,
                                "column": 25
                              }
                            },
                            "value": 250,
                            "rawValue": 250,
                            "raw": "250"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13597,
              "end": 13673,
              "loc": {
                "start": {
                  "line": 329,
                  "column": 4
                },
                "end": {
                  "line": 331,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13597,
                "end": 13605,
                "loc": {
                  "start": {
                    "line": 329,
                    "column": 4
                  },
                  "end": {
                    "line": 329,
                    "column": 12
                  }
                },
                "name": "hideGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13605,
                "end": 13673,
                "loc": {
                  "start": {
                    "line": 329,
                    "column": 12
                  },
                  "end": {
                    "line": 331,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13608,
                  "end": 13673,
                  "loc": {
                    "start": {
                      "line": 329,
                      "column": 15
                    },
                    "end": {
                      "line": 331,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13618,
                      "end": 13667,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 8
                        },
                        "end": {
                          "line": 330,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13618,
                        "end": 13666,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 8
                          },
                          "end": {
                            "line": 330,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13618,
                          "end": 13638,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 8
                            },
                            "end": {
                              "line": 330,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13618,
                            "end": 13622,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 8
                              },
                              "end": {
                                "line": 330,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13623,
                            "end": 13638,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 13
                              },
                              "end": {
                                "line": 330,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13639,
                            "end": 13665,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 29
                              },
                              "end": {
                                "line": 330,
                                "column": 55
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13640,
                                "end": 13651,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13640,
                                  "end": 13644,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 34
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13645,
                                  "end": 13651,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 41
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13653,
                                "end": 13664,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13653,
                                  "end": 13657,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13658,
                                  "end": 13664,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 54
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13679,
              "end": 17478,
              "loc": {
                "start": {
                  "line": 333,
                  "column": 4
                },
                "end": {
                  "line": 411,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13679,
                "end": 13689,
                "loc": {
                  "start": {
                    "line": 333,
                    "column": 4
                  },
                  "end": {
                    "line": 333,
                    "column": 14
                  }
                },
                "name": "updateGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13689,
                "end": 17478,
                "loc": {
                  "start": {
                    "line": 333,
                    "column": 14
                  },
                  "end": {
                    "line": 411,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13690,
                    "end": 13704,
                    "loc": {
                      "start": {
                        "line": 333,
                        "column": 15
                      },
                      "end": {
                        "line": 333,
                        "column": 29
                      }
                    },
                    "name": "cameraDistance"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13706,
                  "end": 17478,
                  "loc": {
                    "start": {
                      "line": 333,
                      "column": 31
                    },
                    "end": {
                      "line": 411,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13716,
                      "end": 13755,
                      "loc": {
                        "start": {
                          "line": 334,
                          "column": 8
                        },
                        "end": {
                          "line": 334,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13716,
                        "end": 13754,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 8
                          },
                          "end": {
                            "line": 334,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 13716,
                          "end": 13730,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 8
                            },
                            "end": {
                              "line": 334,
                              "column": 22
                            }
                          },
                          "name": "cameraDistance"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 13733,
                          "end": 13754,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 25
                            },
                            "end": {
                              "line": 334,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 13733,
                            "end": 13747,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 25
                              },
                              "end": {
                                "line": 334,
                                "column": 39
                              }
                            },
                            "name": "cameraDistance"
                          },
                          "operator": "||",
                          "right": {
                            "type": "Literal",
                            "start": 13751,
                            "end": 13754,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 43
                              },
                              "end": {
                                "line": 334,
                                "column": 46
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13756,
                          "end": 13783,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 48
                            },
                            "end": {
                              "line": 334,
                              "column": 75
                            }
                          },
                          "range": [
                            13756,
                            13783
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13792,
                          "end": 13830,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 8
                            },
                            "end": {
                              "line": 335,
                              "column": 46
                            }
                          },
                          "range": [
                            13792,
                            13830
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13839,
                      "end": 13899,
                      "loc": {
                        "start": {
                          "line": 336,
                          "column": 8
                        },
                        "end": {
                          "line": 336,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13843,
                          "end": 13898,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 12
                            },
                            "end": {
                              "line": 336,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13843,
                            "end": 13847,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 12
                              },
                              "end": {
                                "line": 336,
                                "column": 16
                              }
                            },
                            "name": "step",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13850,
                            "end": 13898,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 19
                              },
                              "end": {
                                "line": 336,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13850,
                              "end": 13867,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 19
                                },
                                "end": {
                                  "line": 336,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13850,
                                "end": 13854,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13855,
                                "end": 13867,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 36
                                  }
                                },
                                "name": "calcGridStep"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13868,
                                "end": 13882,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 51
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13884,
                                "end": 13897,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13884,
                                  "end": 13888,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 57
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13889,
                                  "end": 13897,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 66
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13756,
                          "end": 13783,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 48
                            },
                            "end": {
                              "line": 334,
                              "column": 75
                            }
                          },
                          "range": [
                            13756,
                            13783
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13792,
                          "end": 13830,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 8
                            },
                            "end": {
                              "line": 335,
                              "column": 46
                            }
                          },
                          "range": [
                            13792,
                            13830
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13908,
                      "end": 13963,
                      "loc": {
                        "start": {
                          "line": 337,
                          "column": 8
                        },
                        "end": {
                          "line": 337,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13912,
                          "end": 13962,
                          "loc": {
                            "start": {
                              "line": 337,
                              "column": 12
                            },
                            "end": {
                              "line": 337,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13912,
                            "end": 13920,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 12
                              },
                              "end": {
                                "line": 337,
                                "column": 20
                              }
                            },
                            "name": "axisSize"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13923,
                            "end": 13962,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 23
                              },
                              "end": {
                                "line": 337,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13923,
                              "end": 13940,
                              "loc": {
                                "start": {
                                  "line": 337,
                                  "column": 23
                                },
                                "end": {
                                  "line": 337,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13923,
                                "end": 13927,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13928,
                                "end": 13940,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 40
                                  }
                                },
                                "name": "calcAxisSize"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13941,
                                "end": 13955,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 55
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 13957,
                                "end": 13961,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 61
                                  }
                                },
                                "name": "step"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13972,
                      "end": 14015,
                      "loc": {
                        "start": {
                          "line": 338,
                          "column": 8
                        },
                        "end": {
                          "line": 338,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13976,
                          "end": 14014,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 12
                            },
                            "end": {
                              "line": 338,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13976,
                            "end": 13986,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 12
                              },
                              "end": {
                                "line": 338,
                                "column": 22
                              }
                            },
                            "name": "screenSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 13989,
                            "end": 14014,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 25
                              },
                              "end": {
                                "line": 338,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 13989,
                              "end": 14010,
                              "loc": {
                                "start": {
                                  "line": 338,
                                  "column": 25
                                },
                                "end": {
                                  "line": 338,
                                  "column": 46
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 13989,
                                "end": 13993,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 29
                                  }
                                },
                                "name": "step"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 13997,
                                "end": 14010,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13997,
                                  "end": 14001,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14002,
                                  "end": 14010,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 46
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 14013,
                              "end": 14014,
                              "loc": {
                                "start": {
                                  "line": 338,
                                  "column": 49
                                },
                                "end": {
                                  "line": 338,
                                  "column": 50
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 14025,
                      "end": 17472,
                      "loc": {
                        "start": {
                          "line": 340,
                          "column": 8
                        },
                        "end": {
                          "line": 410,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 14029,
                        "end": 14081,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 12
                          },
                          "end": {
                            "line": 340,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 14029,
                          "end": 14051,
                          "loc": {
                            "start": {
                              "line": 340,
                              "column": 12
                            },
                            "end": {
                              "line": 340,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 14029,
                            "end": 14042,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 12
                              },
                              "end": {
                                "line": 340,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14029,
                              "end": 14033,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 12
                                },
                                "end": {
                                  "line": 340,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14034,
                              "end": 14042,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 17
                                },
                                "end": {
                                  "line": 340,
                                  "column": 25
                                }
                              },
                              "name": "gridStep"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14047,
                            "end": 14051,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 30
                              },
                              "end": {
                                "line": 340,
                                "column": 34
                              }
                            },
                            "name": "step"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 14055,
                          "end": 14081,
                          "loc": {
                            "start": {
                              "line": 340,
                              "column": 38
                            },
                            "end": {
                              "line": 340,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 14055,
                            "end": 14068,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 38
                              },
                              "end": {
                                "line": 340,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14055,
                              "end": 14059,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 38
                                },
                                "end": {
                                  "line": 340,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14060,
                              "end": 14068,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 43
                                },
                                "end": {
                                  "line": 340,
                                  "column": 51
                                }
                              },
                              "name": "axisSize"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14073,
                            "end": 14081,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 56
                              },
                              "end": {
                                "line": 340,
                                "column": 64
                              }
                            },
                            "name": "axisSize"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 14083,
                        "end": 17472,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 66
                          },
                          "end": {
                            "line": 410,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 14097,
                            "end": 14118,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 12
                              },
                              "end": {
                                "line": 341,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14097,
                              "end": 14117,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 12
                                },
                                "end": {
                                  "line": 341,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14097,
                                "end": 14110,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14097,
                                  "end": 14101,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14102,
                                  "end": 14110,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14113,
                                "end": 14117,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 32
                                  }
                                },
                                "name": "step"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 14131,
                            "end": 14156,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 12
                              },
                              "end": {
                                "line": 342,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14131,
                              "end": 14155,
                              "loc": {
                                "start": {
                                  "line": 342,
                                  "column": 12
                                },
                                "end": {
                                  "line": 342,
                                  "column": 36
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14131,
                                "end": 14144,
                                "loc": {
                                  "start": {
                                    "line": 342,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 342,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14131,
                                  "end": 14135,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 342,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14136,
                                  "end": 14144,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 342,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14147,
                                "end": 14155,
                                "loc": {
                                  "start": {
                                    "line": 342,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 342,
                                    "column": 36
                                  }
                                },
                                "name": "axisSize"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14170,
                            "end": 14203,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 12
                              },
                              "end": {
                                "line": 344,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14174,
                                "end": 14187,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 29
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14174,
                                  "end": 14183,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14186,
                                  "end": 14187,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 29
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 14189,
                                "end": 14202,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14189,
                                  "end": 14198,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 40
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14201,
                                  "end": 14202,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 44
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14216,
                            "end": 14350,
                            "loc": {
                              "start": {
                                "line": 345,
                                "column": 12
                              },
                              "end": {
                                "line": 347,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14220,
                                "end": 14349,
                                "loc": {
                                  "start": {
                                    "line": 345,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 347,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14220,
                                  "end": 14229,
                                  "loc": {
                                    "start": {
                                      "line": 345,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 345,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToGrid"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14232,
                                  "end": 14349,
                                  "loc": {
                                    "start": {
                                      "line": 345,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 347,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14233,
                                      "end": 14234,
                                      "loc": {
                                        "start": {
                                          "line": 345,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 345,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14236,
                                      "end": 14237,
                                      "loc": {
                                        "start": {
                                          "line": 345,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 345,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14239,
                                      "end": 14240,
                                      "loc": {
                                        "start": {
                                          "line": 345,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 345,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14245,
                                    "end": 14349,
                                    "loc": {
                                      "start": {
                                        "line": 345,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14263,
                                        "end": 14335,
                                        "loc": {
                                          "start": {
                                            "line": 346,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 346,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14263,
                                          "end": 14334,
                                          "loc": {
                                            "start": {
                                              "line": 346,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 346,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14263,
                                            "end": 14305,
                                            "loc": {
                                              "start": {
                                                "line": 346,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 346,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14263,
                                              "end": 14292,
                                              "loc": {
                                                "start": {
                                                  "line": 346,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 346,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14263,
                                                "end": 14283,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14263,
                                                  "end": 14274,
                                                  "loc": {
                                                    "start": {
                                                      "line": 346,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 346,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14263,
                                                    "end": 14267,
                                                    "loc": {
                                                      "start": {
                                                        "line": 346,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 346,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14268,
                                                    "end": 14274,
                                                    "loc": {
                                                      "start": {
                                                        "line": 346,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 346,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__grid"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14275,
                                                  "end": 14283,
                                                  "loc": {
                                                    "start": {
                                                      "line": 346,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 346,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14284,
                                                "end": 14292,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14293,
                                              "end": 14304,
                                              "loc": {
                                                "start": {
                                                  "line": 346,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 346,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14293,
                                                "end": 14302,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "gridCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14308,
                                            "end": 14334,
                                            "loc": {
                                              "start": {
                                                "line": 346,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 346,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14312,
                                              "end": 14325,
                                              "loc": {
                                                "start": {
                                                  "line": 346,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 346,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14312,
                                                "end": 14317,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14318,
                                                "end": 14325,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14326,
                                                "end": 14327,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14329,
                                                "end": 14330,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14332,
                                                "end": 14333,
                                                "loc": {
                                                  "start": {
                                                    "line": 346,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 346,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14363,
                            "end": 14497,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 12
                              },
                              "end": {
                                "line": 350,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14367,
                                "end": 14496,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 350,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14367,
                                  "end": 14376,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToAxis"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14379,
                                  "end": 14496,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 350,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14380,
                                      "end": 14381,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14383,
                                      "end": 14384,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14386,
                                      "end": 14387,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14392,
                                    "end": 14496,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 350,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14410,
                                        "end": 14482,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14410,
                                          "end": 14481,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14410,
                                            "end": 14452,
                                            "loc": {
                                              "start": {
                                                "line": 349,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 349,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14410,
                                              "end": 14439,
                                              "loc": {
                                                "start": {
                                                  "line": 349,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 349,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14410,
                                                "end": 14430,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14410,
                                                  "end": 14421,
                                                  "loc": {
                                                    "start": {
                                                      "line": 349,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 349,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14410,
                                                    "end": 14414,
                                                    "loc": {
                                                      "start": {
                                                        "line": 349,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 349,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14415,
                                                    "end": 14421,
                                                    "loc": {
                                                      "start": {
                                                        "line": 349,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 349,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__axis"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14422,
                                                  "end": 14430,
                                                  "loc": {
                                                    "start": {
                                                      "line": 349,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 349,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14431,
                                                "end": 14439,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14440,
                                              "end": 14451,
                                              "loc": {
                                                "start": {
                                                  "line": 349,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 349,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14440,
                                                "end": 14449,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "axisCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14455,
                                            "end": 14481,
                                            "loc": {
                                              "start": {
                                                "line": 349,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 349,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14459,
                                              "end": 14472,
                                              "loc": {
                                                "start": {
                                                  "line": 349,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 349,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14459,
                                                "end": 14464,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14465,
                                                "end": 14472,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14473,
                                                "end": 14474,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14476,
                                                "end": 14477,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14479,
                                                "end": 14480,
                                                "loc": {
                                                  "start": {
                                                    "line": 349,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 349,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 14511,
                            "end": 15553,
                            "loc": {
                              "start": {
                                "line": 352,
                                "column": 12
                              },
                              "end": {
                                "line": 373,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 14515,
                              "end": 14524,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 16
                                },
                                "end": {
                                  "line": 352,
                                  "column": 25
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 14519,
                                  "end": 14524,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 25
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 14519,
                                    "end": 14520,
                                    "loc": {
                                      "start": {
                                        "line": 352,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 352,
                                        "column": 21
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 14523,
                                    "end": 14524,
                                    "loc": {
                                      "start": {
                                        "line": 352,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 352,
                                        "column": 25
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 14526,
                              "end": 14544,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 27
                                },
                                "end": {
                                  "line": 352,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 14526,
                                "end": 14527,
                                "loc": {
                                  "start": {
                                    "line": 352,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 352,
                                    "column": 28
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 14531,
                                "end": 14544,
                                "loc": {
                                  "start": {
                                    "line": 352,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 352,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14531,
                                  "end": 14535,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14536,
                                  "end": 14544,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 45
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 14546,
                              "end": 14549,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 47
                                },
                                "end": {
                                  "line": 352,
                                  "column": 50
                                }
                              },
                              "operator": "++",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 14548,
                                "end": 14549,
                                "loc": {
                                  "start": {
                                    "line": 352,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 352,
                                    "column": 50
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 14551,
                              "end": 15553,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 52
                                },
                                "end": {
                                  "line": 373,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14569,
                                  "end": 14610,
                                  "loc": {
                                    "start": {
                                      "line": 353,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 353,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14569,
                                    "end": 14609,
                                    "loc": {
                                      "start": {
                                        "line": 353,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 353,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14569,
                                      "end": 14578,
                                      "loc": {
                                        "start": {
                                          "line": 353,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 353,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14579,
                                        "end": 14594,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14579,
                                          "end": 14590,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14580,
                                            "end": 14590,
                                            "loc": {
                                              "start": {
                                                "line": 353,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 353,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14593,
                                          "end": 14594,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14597,
                                        "end": 14605,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14597,
                                          "end": 14601,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14604,
                                          "end": 14605,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14607,
                                        "end": 14608,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14627,
                                  "end": 14668,
                                  "loc": {
                                    "start": {
                                      "line": 354,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 354,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14627,
                                    "end": 14667,
                                    "loc": {
                                      "start": {
                                        "line": 354,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 354,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14627,
                                      "end": 14636,
                                      "loc": {
                                        "start": {
                                          "line": 354,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 354,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14638,
                                        "end": 14652,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14638,
                                          "end": 14648,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14651,
                                          "end": 14652,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14655,
                                        "end": 14663,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14655,
                                          "end": 14659,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14662,
                                          "end": 14663,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14665,
                                        "end": 14666,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14685,
                                  "end": 14726,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 355,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14685,
                                    "end": 14725,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14685,
                                      "end": 14694,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14695,
                                        "end": 14710,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14695,
                                          "end": 14706,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14696,
                                            "end": 14706,
                                            "loc": {
                                              "start": {
                                                "line": 355,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 355,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14709,
                                          "end": 14710,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14712,
                                        "end": 14721,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14712,
                                          "end": 14717,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14713,
                                            "end": 14717,
                                            "loc": {
                                              "start": {
                                                "line": 355,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 355,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14720,
                                          "end": 14721,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14723,
                                        "end": 14724,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14743,
                                  "end": 14784,
                                  "loc": {
                                    "start": {
                                      "line": 356,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 356,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14743,
                                    "end": 14783,
                                    "loc": {
                                      "start": {
                                        "line": 356,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 356,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14743,
                                      "end": 14752,
                                      "loc": {
                                        "start": {
                                          "line": 356,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 356,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14754,
                                        "end": 14768,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14754,
                                          "end": 14764,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14767,
                                          "end": 14768,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14770,
                                        "end": 14779,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14770,
                                          "end": 14775,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14771,
                                            "end": 14775,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14778,
                                          "end": 14779,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14781,
                                        "end": 14782,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14801,
                                  "end": 14842,
                                  "loc": {
                                    "start": {
                                      "line": 357,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 357,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14801,
                                    "end": 14841,
                                    "loc": {
                                      "start": {
                                        "line": 357,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 357,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14801,
                                      "end": 14810,
                                      "loc": {
                                        "start": {
                                          "line": 357,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 357,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14812,
                                        "end": 14820,
                                        "loc": {
                                          "start": {
                                            "line": 357,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 357,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14812,
                                          "end": 14816,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14819,
                                          "end": 14820,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14823,
                                        "end": 14837,
                                        "loc": {
                                          "start": {
                                            "line": 357,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 357,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14823,
                                          "end": 14833,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14836,
                                          "end": 14837,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14839,
                                        "end": 14840,
                                        "loc": {
                                          "start": {
                                            "line": 357,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 357,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14859,
                                  "end": 14900,
                                  "loc": {
                                    "start": {
                                      "line": 358,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 358,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14859,
                                    "end": 14899,
                                    "loc": {
                                      "start": {
                                        "line": 358,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 358,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14859,
                                      "end": 14868,
                                      "loc": {
                                        "start": {
                                          "line": 358,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 358,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14870,
                                        "end": 14878,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14870,
                                          "end": 14874,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14877,
                                          "end": 14878,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14880,
                                        "end": 14895,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14880,
                                          "end": 14891,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14881,
                                            "end": 14891,
                                            "loc": {
                                              "start": {
                                                "line": 358,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 358,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14894,
                                          "end": 14895,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14897,
                                        "end": 14898,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14917,
                                  "end": 14958,
                                  "loc": {
                                    "start": {
                                      "line": 359,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 359,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14917,
                                    "end": 14957,
                                    "loc": {
                                      "start": {
                                        "line": 359,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 359,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14917,
                                      "end": 14926,
                                      "loc": {
                                        "start": {
                                          "line": 359,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 359,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14927,
                                        "end": 14936,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14927,
                                          "end": 14932,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14928,
                                            "end": 14932,
                                            "loc": {
                                              "start": {
                                                "line": 359,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 359,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14935,
                                          "end": 14936,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14939,
                                        "end": 14953,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14939,
                                          "end": 14949,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14952,
                                          "end": 14953,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14955,
                                        "end": 14956,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14975,
                                  "end": 15016,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14975,
                                    "end": 15015,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14975,
                                      "end": 14984,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14985,
                                        "end": 14994,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14985,
                                          "end": 14990,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14986,
                                            "end": 14990,
                                            "loc": {
                                              "start": {
                                                "line": 360,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 360,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14993,
                                          "end": 14994,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14996,
                                        "end": 15011,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14996,
                                          "end": 15007,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14997,
                                            "end": 15007,
                                            "loc": {
                                              "start": {
                                                "line": 360,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 360,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 15010,
                                          "end": 15011,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 15013,
                                        "end": 15014,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 15033,
                                  "end": 15539,
                                  "loc": {
                                    "start": {
                                      "line": 361,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 15037,
                                    "end": 15044,
                                    "loc": {
                                      "start": {
                                        "line": 361,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 361,
                                        "column": 27
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 15037,
                                      "end": 15038,
                                      "loc": {
                                        "start": {
                                          "line": 361,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 361,
                                          "column": 21
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 15043,
                                      "end": 15044,
                                      "loc": {
                                        "start": {
                                          "line": 361,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 361,
                                          "column": 27
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 15046,
                                    "end": 15539,
                                    "loc": {
                                      "start": {
                                        "line": 361,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15101,
                                        "end": 15134,
                                        "loc": {
                                          "start": {
                                            "line": 363,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 363,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15101,
                                          "end": 15133,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15101,
                                            "end": 15110,
                                            "loc": {
                                              "start": {
                                                "line": 363,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 363,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15111,
                                              "end": 15126,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15111,
                                                "end": 15122,
                                                "loc": {
                                                  "start": {
                                                    "line": 363,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 363,
                                                    "column": 41
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15112,
                                                  "end": 15122,
                                                  "loc": {
                                                    "start": {
                                                      "line": 363,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 363,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15125,
                                                "end": 15126,
                                                "loc": {
                                                  "start": {
                                                    "line": 363,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 363,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15128,
                                              "end": 15129,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15131,
                                              "end": 15132,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " x \\ axisX",
                                            "start": 15068,
                                            "end": 15080,
                                            "loc": {
                                              "start": {
                                                "line": 362,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 362,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15068,
                                              15080
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15155,
                                        "end": 15182,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15155,
                                          "end": 15181,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15155,
                                            "end": 15164,
                                            "loc": {
                                              "start": {
                                                "line": 364,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 364,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15165,
                                              "end": 15174,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 39
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15166,
                                                "end": 15174,
                                                "loc": {
                                                  "start": {
                                                    "line": 364,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 364,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15176,
                                              "end": 15177,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15179,
                                              "end": 15180,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15203,
                                        "end": 15236,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15203,
                                          "end": 15235,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15203,
                                            "end": 15212,
                                            "loc": {
                                              "start": {
                                                "line": 365,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 365,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15214,
                                              "end": 15228,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15214,
                                                "end": 15224,
                                                "loc": {
                                                  "start": {
                                                    "line": 365,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 365,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15227,
                                                "end": 15228,
                                                "loc": {
                                                  "start": {
                                                    "line": 365,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 365,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15230,
                                              "end": 15231,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15233,
                                              "end": 15234,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15257,
                                        "end": 15284,
                                        "loc": {
                                          "start": {
                                            "line": 366,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 366,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15257,
                                          "end": 15283,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15257,
                                            "end": 15266,
                                            "loc": {
                                              "start": {
                                                "line": 366,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 366,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 15268,
                                              "end": 15276,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 39
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15278,
                                              "end": 15279,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15281,
                                              "end": 15282,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15305,
                                            "end": 15317,
                                            "loc": {
                                              "start": {
                                                "line": 367,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 367,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15305,
                                              15317
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15338,
                                        "end": 15371,
                                        "loc": {
                                          "start": {
                                            "line": 368,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 368,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15338,
                                          "end": 15370,
                                          "loc": {
                                            "start": {
                                              "line": 368,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 368,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15338,
                                            "end": 15347,
                                            "loc": {
                                              "start": {
                                                "line": 368,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 368,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15348,
                                              "end": 15349,
                                              "loc": {
                                                "start": {
                                                  "line": 368,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 368,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15352,
                                              "end": 15366,
                                              "loc": {
                                                "start": {
                                                  "line": 368,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 368,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15352,
                                                "end": 15362,
                                                "loc": {
                                                  "start": {
                                                    "line": 368,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 368,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15365,
                                                "end": 15366,
                                                "loc": {
                                                  "start": {
                                                    "line": 368,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 368,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15368,
                                              "end": 15369,
                                              "loc": {
                                                "start": {
                                                  "line": 368,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 368,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15305,
                                            "end": 15317,
                                            "loc": {
                                              "start": {
                                                "line": 367,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 367,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15305,
                                              15317
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15392,
                                        "end": 15419,
                                        "loc": {
                                          "start": {
                                            "line": 369,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 369,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15392,
                                          "end": 15418,
                                          "loc": {
                                            "start": {
                                              "line": 369,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 369,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15392,
                                            "end": 15401,
                                            "loc": {
                                              "start": {
                                                "line": 369,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 369,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15402,
                                              "end": 15403,
                                              "loc": {
                                                "start": {
                                                  "line": 369,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 369,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 15406,
                                              "end": 15414,
                                              "loc": {
                                                "start": {
                                                  "line": 369,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 369,
                                                  "column": 42
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15416,
                                              "end": 15417,
                                              "loc": {
                                                "start": {
                                                  "line": 369,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 369,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15440,
                                        "end": 15473,
                                        "loc": {
                                          "start": {
                                            "line": 370,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 370,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15440,
                                          "end": 15472,
                                          "loc": {
                                            "start": {
                                              "line": 370,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 370,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15440,
                                            "end": 15449,
                                            "loc": {
                                              "start": {
                                                "line": 370,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 370,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15450,
                                              "end": 15451,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15453,
                                              "end": 15468,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15453,
                                                "end": 15464,
                                                "loc": {
                                                  "start": {
                                                    "line": 370,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 370,
                                                    "column": 44
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15454,
                                                  "end": 15464,
                                                  "loc": {
                                                    "start": {
                                                      "line": 370,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 370,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15467,
                                                "end": 15468,
                                                "loc": {
                                                  "start": {
                                                    "line": 370,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 370,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15470,
                                              "end": 15471,
                                              "loc": {
                                                "start": {
                                                  "line": 370,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 370,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15494,
                                        "end": 15521,
                                        "loc": {
                                          "start": {
                                            "line": 371,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 371,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15494,
                                          "end": 15520,
                                          "loc": {
                                            "start": {
                                              "line": 371,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 371,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15494,
                                            "end": 15503,
                                            "loc": {
                                              "start": {
                                                "line": 371,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 371,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15504,
                                              "end": 15505,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15507,
                                              "end": 15516,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 42
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15508,
                                                "end": 15516,
                                                "loc": {
                                                  "start": {
                                                    "line": 371,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 371,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15518,
                                              "end": 15519,
                                              "loc": {
                                                "start": {
                                                  "line": 371,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 371,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ],
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15567,
                                "end": 15574,
                                "loc": {
                                  "start": {
                                    "line": 375,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 375,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15567,
                                  15574
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15587,
                            "end": 15614,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 12
                              },
                              "end": {
                                "line": 376,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15587,
                              "end": 15613,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 12
                                },
                                "end": {
                                  "line": 376,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15587,
                                "end": 15596,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis",
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 15597,
                                  "end": 15606,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 31
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15598,
                                    "end": 15606,
                                    "loc": {
                                      "start": {
                                        "line": 376,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 376,
                                        "column": 31
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15608,
                                  "end": 15609,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15611,
                                  "end": 15612,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15567,
                                "end": 15574,
                                "loc": {
                                  "start": {
                                    "line": 375,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 375,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15567,
                                  15574
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15627,
                            "end": 15654,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 12
                              },
                              "end": {
                                "line": 377,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15627,
                              "end": 15653,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 12
                                },
                                "end": {
                                  "line": 377,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15627,
                                "end": 15636,
                                "loc": {
                                  "start": {
                                    "line": 377,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 377,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15638,
                                  "end": 15646,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 31
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15648,
                                  "end": 15649,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15651,
                                  "end": 15652,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15667,
                            "end": 15694,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15667,
                              "end": 15693,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 12
                                },
                                "end": {
                                  "line": 378,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15667,
                                "end": 15676,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15677,
                                  "end": 15678,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15680,
                                  "end": 15689,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 34
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15681,
                                    "end": 15689,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 34
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15691,
                                  "end": 15692,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15707,
                            "end": 15734,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 12
                              },
                              "end": {
                                "line": 379,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15707,
                              "end": 15733,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 12
                                },
                                "end": {
                                  "line": 379,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15707,
                                "end": 15716,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 379,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15717,
                                  "end": 15718,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 15721,
                                  "end": 15729,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 34
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15731,
                                  "end": 15732,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15747,
                                "end": 15756,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15747,
                                  15756
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15769,
                            "end": 15802,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 12
                              },
                              "end": {
                                "line": 381,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15773,
                                "end": 15801,
                                "loc": {
                                  "start": {
                                    "line": 381,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 381,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15773,
                                  "end": 15783,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 26
                                    }
                                  },
                                  "name": "arrowWidth",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 15786,
                                  "end": 15801,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 15786,
                                    "end": 15799,
                                    "loc": {
                                      "start": {
                                        "line": 381,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 381,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15786,
                                      "end": 15790,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15791,
                                      "end": 15799,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 42
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 15800,
                                    "end": 15801,
                                    "loc": {
                                      "start": {
                                        "line": 381,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 381,
                                        "column": 44
                                      }
                                    },
                                    "value": 4,
                                    "rawValue": 4,
                                    "raw": "4"
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15747,
                                "end": 15756,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15747,
                                  15756
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15815,
                            "end": 15868,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 12
                              },
                              "end": {
                                "line": 382,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15815,
                              "end": 15867,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 12
                                },
                                "end": {
                                  "line": 382,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15815,
                                "end": 15824,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15825,
                                  "end": 15849,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15825,
                                    "end": 15833,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15836,
                                    "end": 15849,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15836,
                                      "end": 15840,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15841,
                                      "end": 15849,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15851,
                                  "end": 15863,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 60
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15853,
                                    "end": 15863,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15865,
                                  "end": 15866,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15881,
                            "end": 15907,
                            "loc": {
                              "start": {
                                "line": 383,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15881,
                              "end": 15906,
                              "loc": {
                                "start": {
                                  "line": 383,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15881,
                                "end": 15890,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15891,
                                  "end": 15899,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15901,
                                  "end": 15902,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15904,
                                  "end": 15905,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15920,
                            "end": 15973,
                            "loc": {
                              "start": {
                                "line": 384,
                                "column": 12
                              },
                              "end": {
                                "line": 384,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15920,
                              "end": 15972,
                              "loc": {
                                "start": {
                                  "line": 384,
                                  "column": 12
                                },
                                "end": {
                                  "line": 384,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15920,
                                "end": 15929,
                                "loc": {
                                  "start": {
                                    "line": 384,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 384,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15930,
                                  "end": 15954,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15930,
                                    "end": 15938,
                                    "loc": {
                                      "start": {
                                        "line": 384,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 384,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15941,
                                    "end": 15954,
                                    "loc": {
                                      "start": {
                                        "line": 384,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 384,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15941,
                                      "end": 15945,
                                      "loc": {
                                        "start": {
                                          "line": 384,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 384,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15946,
                                      "end": 15954,
                                      "loc": {
                                        "start": {
                                          "line": 384,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 384,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15956,
                                  "end": 15968,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 60
                                    }
                                  },
                                  "operator": "+",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15958,
                                    "end": 15968,
                                    "loc": {
                                      "start": {
                                        "line": 384,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 384,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15970,
                                  "end": 15971,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15986,
                            "end": 16012,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 12
                              },
                              "end": {
                                "line": 385,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15986,
                              "end": 16011,
                              "loc": {
                                "start": {
                                  "line": 385,
                                  "column": 12
                                },
                                "end": {
                                  "line": 385,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15986,
                                "end": 15995,
                                "loc": {
                                  "start": {
                                    "line": 385,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 385,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15996,
                                  "end": 16004,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16006,
                                  "end": 16007,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16009,
                                  "end": 16010,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16025,
                            "end": 16077,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 12
                              },
                              "end": {
                                "line": 386,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16025,
                              "end": 16076,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 12
                                },
                                "end": {
                                  "line": 386,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16025,
                                "end": 16034,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 16035,
                                  "end": 16046,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 33
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16036,
                                    "end": 16046,
                                    "loc": {
                                      "start": {
                                        "line": 386,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 386,
                                        "column": 33
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16048,
                                  "end": 16072,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16048,
                                    "end": 16056,
                                    "loc": {
                                      "start": {
                                        "line": 386,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 386,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16059,
                                    "end": 16072,
                                    "loc": {
                                      "start": {
                                        "line": 386,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 386,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16059,
                                      "end": 16063,
                                      "loc": {
                                        "start": {
                                          "line": 386,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 386,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16064,
                                      "end": 16072,
                                      "loc": {
                                        "start": {
                                          "line": 386,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 386,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16074,
                                  "end": 16075,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16090,
                            "end": 16116,
                            "loc": {
                              "start": {
                                "line": 387,
                                "column": 12
                              },
                              "end": {
                                "line": 387,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16090,
                              "end": 16115,
                              "loc": {
                                "start": {
                                  "line": 387,
                                  "column": 12
                                },
                                "end": {
                                  "line": 387,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16090,
                                "end": 16099,
                                "loc": {
                                  "start": {
                                    "line": 387,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 387,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16100,
                                  "end": 16101,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16103,
                                  "end": 16111,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16113,
                                  "end": 16114,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16129,
                            "end": 16181,
                            "loc": {
                              "start": {
                                "line": 388,
                                "column": 12
                              },
                              "end": {
                                "line": 388,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16129,
                              "end": 16180,
                              "loc": {
                                "start": {
                                  "line": 388,
                                  "column": 12
                                },
                                "end": {
                                  "line": 388,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16129,
                                "end": 16138,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16140,
                                  "end": 16150,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 33
                                    }
                                  },
                                  "name": "arrowWidth"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16152,
                                  "end": 16176,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16152,
                                    "end": 16160,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16163,
                                    "end": 16176,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16163,
                                      "end": 16167,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16168,
                                      "end": 16176,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16178,
                                  "end": 16179,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16194,
                            "end": 16220,
                            "loc": {
                              "start": {
                                "line": 389,
                                "column": 12
                              },
                              "end": {
                                "line": 389,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16194,
                              "end": 16219,
                              "loc": {
                                "start": {
                                  "line": 389,
                                  "column": 12
                                },
                                "end": {
                                  "line": 389,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16194,
                                "end": 16203,
                                "loc": {
                                  "start": {
                                    "line": 389,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 389,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16204,
                                  "end": 16205,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16207,
                                  "end": 16215,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16217,
                                  "end": 16218,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16233,
                                "end": 16252,
                                "loc": {
                                  "start": {
                                    "line": 390,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 390,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16233,
                                  16252
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 16265,
                            "end": 16402,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 16269,
                                "end": 16295,
                                "loc": {
                                  "start": {
                                    "line": 391,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 391,
                                    "column": 42
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16269,
                                  "end": 16281,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterOffset",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16284,
                                  "end": 16295,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 42
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16284,
                                    "end": 16292,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 16284,
                                      "end": 16285,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 32
                                        }
                                      },
                                      "value": 3,
                                      "rawValue": 3,
                                      "raw": "3"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16288,
                                      "end": 16292,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 39
                                        }
                                      },
                                      "name": "step"
                                    }
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16293,
                                    "end": 16295,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 42
                                      }
                                    },
                                    "value": 10,
                                    "rawValue": 10,
                                    "raw": "10"
                                  }
                                },
                                "leadingComments": null
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16313,
                                "end": 16351,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 54
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16313,
                                  "end": 16325,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterHeight"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16328,
                                  "end": 16351,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 54
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16328,
                                    "end": 16332,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 35
                                      }
                                    },
                                    "name": "step"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16335,
                                    "end": 16351,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 54
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16335,
                                      "end": 16347,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 50
                                        }
                                      },
                                      "name": "letterOffset"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16350,
                                      "end": 16351,
                                      "loc": {
                                        "start": {
                                          "line": 392,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 392,
                                          "column": 54
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16369,
                                "end": 16401,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16369,
                                  "end": 16380,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 27
                                    }
                                  },
                                  "name": "letterWidth"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16383,
                                  "end": 16401,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16383,
                                    "end": 16395,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 42
                                      }
                                    },
                                    "name": "letterHeight"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16398,
                                    "end": 16401,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 48
                                      }
                                    },
                                    "value": 0.6,
                                    "rawValue": 0.6,
                                    "raw": "0.6"
                                  }
                                }
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16233,
                                "end": 16252,
                                "loc": {
                                  "start": {
                                    "line": 390,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 390,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16233,
                                  16252
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16415,
                            "end": 16467,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 12
                              },
                              "end": {
                                "line": 394,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16415,
                              "end": 16466,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 12
                                },
                                "end": {
                                  "line": 394,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16415,
                                "end": 16424,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16425,
                                  "end": 16448,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16425,
                                    "end": 16433,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16436,
                                    "end": 16448,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16450,
                                  "end": 16462,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 59
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16464,
                                  "end": 16465,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16480,
                            "end": 16561,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 12
                              },
                              "end": {
                                "line": 395,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16480,
                              "end": 16560,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 12
                                },
                                "end": {
                                  "line": 395,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16480,
                                "end": 16489,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16490,
                                  "end": 16527,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16490,
                                    "end": 16513,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16490,
                                      "end": 16498,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16501,
                                      "end": 16513,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16516,
                                    "end": 16527,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16529,
                                  "end": 16556,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16529,
                                    "end": 16541,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 73
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16544,
                                    "end": 16556,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16558,
                                  "end": 16559,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16574,
                            "end": 16641,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 12
                              },
                              "end": {
                                "line": 396,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16574,
                              "end": 16640,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 12
                                },
                                "end": {
                                  "line": 396,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16574,
                                "end": 16583,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16584,
                                  "end": 16607,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16584,
                                    "end": 16592,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16595,
                                    "end": 16607,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16609,
                                  "end": 16636,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16609,
                                    "end": 16621,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16624,
                                    "end": 16636,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16638,
                                  "end": 16639,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16654,
                            "end": 16720,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 12
                              },
                              "end": {
                                "line": 397,
                                "column": 78
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16654,
                              "end": 16719,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 12
                                },
                                "end": {
                                  "line": 397,
                                  "column": 77
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16654,
                                "end": 16663,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16664,
                                  "end": 16701,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16664,
                                    "end": 16687,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16664,
                                      "end": 16672,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16675,
                                      "end": 16687,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16690,
                                    "end": 16701,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16703,
                                  "end": 16715,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 73
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16717,
                                  "end": 16718,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 76
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16733,
                            "end": 16785,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 12
                              },
                              "end": {
                                "line": 398,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16733,
                              "end": 16784,
                              "loc": {
                                "start": {
                                  "line": 398,
                                  "column": 12
                                },
                                "end": {
                                  "line": 398,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16733,
                                "end": 16742,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16743,
                                  "end": 16755,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16757,
                                  "end": 16780,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16757,
                                    "end": 16765,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 44
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16768,
                                    "end": 16780,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16782,
                                  "end": 16783,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16798,
                            "end": 16879,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 12
                              },
                              "end": {
                                "line": 399,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16798,
                              "end": 16878,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 12
                                },
                                "end": {
                                  "line": 399,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16798,
                                "end": 16807,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16808,
                                  "end": 16834,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16808,
                                    "end": 16820,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16823,
                                    "end": 16834,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 48
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16836,
                                  "end": 16874,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16836,
                                    "end": 16859,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 73
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16836,
                                      "end": 16844,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 58
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16847,
                                      "end": 16859,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 73
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16862,
                                    "end": 16874,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16876,
                                  "end": 16877,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16892,
                            "end": 16959,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 12
                              },
                              "end": {
                                "line": 400,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16892,
                              "end": 16958,
                              "loc": {
                                "start": {
                                  "line": 400,
                                  "column": 12
                                },
                                "end": {
                                  "line": 400,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16892,
                                "end": 16901,
                                "loc": {
                                  "start": {
                                    "line": 400,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 400,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16902,
                                  "end": 16914,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16916,
                                  "end": 16954,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16916,
                                    "end": 16939,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16916,
                                      "end": 16924,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 44
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16927,
                                      "end": 16939,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 59
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16942,
                                    "end": 16954,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16956,
                                  "end": 16957,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16972,
                            "end": 17061,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 12
                              },
                              "end": {
                                "line": 401,
                                "column": 101
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16972,
                              "end": 17060,
                              "loc": {
                                "start": {
                                  "line": 401,
                                  "column": 12
                                },
                                "end": {
                                  "line": 401,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16972,
                                "end": 16981,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16982,
                                  "end": 17012,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 52
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16982,
                                    "end": 16994,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16997,
                                    "end": 17012,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 52
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16997,
                                      "end": 17008,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 48
                                        }
                                      },
                                      "name": "letterWidth"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17011,
                                      "end": 17012,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 52
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 17014,
                                  "end": 17056,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 96
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 17014,
                                    "end": 17037,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 77
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17014,
                                      "end": 17022,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 62
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17025,
                                      "end": 17037,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 77
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17040,
                                    "end": 17056,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 96
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17040,
                                      "end": 17052,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 92
                                        }
                                      },
                                      "name": "letterHeight"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17055,
                                      "end": 17056,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 95
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 96
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17058,
                                  "end": 17059,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 99
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": "note: vertex counts must not change after first render",
                                "start": 17075,
                                "end": 17131,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17075,
                                  17131
                                ]
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 17144,
                            "end": 17341,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 12
                              },
                              "end": {
                                "line": 406,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 17148,
                              "end": 17266,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 16
                                },
                                "end": {
                                  "line": 405,
                                  "column": 65
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 17148,
                                "end": 17197,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17148,
                                  "end": 17157,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount",
                                  "leadingComments": null
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17161,
                                  "end": 17197,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17161,
                                    "end": 17190,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17161,
                                      "end": 17181,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17161,
                                        "end": 17172,
                                        "loc": {
                                          "start": {
                                            "line": 404,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 404,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17161,
                                          "end": 17165,
                                          "loc": {
                                            "start": {
                                              "line": 404,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 404,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17166,
                                          "end": 17172,
                                          "loc": {
                                            "start": {
                                              "line": 404,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 404,
                                              "column": 40
                                            }
                                          },
                                          "name": "__grid"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17173,
                                        "end": 17181,
                                        "loc": {
                                          "start": {
                                            "line": 404,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 404,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17182,
                                      "end": 17190,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17191,
                                    "end": 17197,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "leadingComments": null
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 17217,
                                "end": 17266,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17217,
                                  "end": 17226,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17230,
                                  "end": 17266,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17230,
                                    "end": 17259,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17230,
                                      "end": 17250,
                                      "loc": {
                                        "start": {
                                          "line": 405,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 405,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17230,
                                        "end": 17241,
                                        "loc": {
                                          "start": {
                                            "line": 405,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 405,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17230,
                                          "end": 17234,
                                          "loc": {
                                            "start": {
                                              "line": 405,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 405,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17235,
                                          "end": 17241,
                                          "loc": {
                                            "start": {
                                              "line": 405,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 405,
                                              "column": 40
                                            }
                                          },
                                          "name": "__axis"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17242,
                                        "end": 17250,
                                        "loc": {
                                          "start": {
                                            "line": 405,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 405,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17251,
                                      "end": 17259,
                                      "loc": {
                                        "start": {
                                          "line": 405,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 405,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17260,
                                    "end": 17266,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                }
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 17284,
                              "end": 17341,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 16
                                },
                                "end": {
                                  "line": 406,
                                  "column": 73
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 17284,
                                "end": 17340,
                                "loc": {
                                  "start": {
                                    "line": 406,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 406,
                                    "column": 72
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17284,
                                  "end": 17297,
                                  "loc": {
                                    "start": {
                                      "line": 406,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 406,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17284,
                                    "end": 17291,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 23
                                      }
                                    },
                                    "name": "console"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17292,
                                    "end": 17297,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 406,
                                        "column": 29
                                      }
                                    },
                                    "name": "error"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 17298,
                                    "end": 17339,
                                    "loc": {
                                      "start": {
                                        "line": 406,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 406,
                                        "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": 17075,
                                "end": 17131,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17075,
                                  17131
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17355,
                            "end": 17402,
                            "loc": {
                              "start": {
                                "line": 408,
                                "column": 12
                              },
                              "end": {
                                "line": 408,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17355,
                              "end": 17401,
                              "loc": {
                                "start": {
                                  "line": 408,
                                  "column": 12
                                },
                                "end": {
                                  "line": 408,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17355,
                                "end": 17394,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17355,
                                  "end": 17375,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17355,
                                    "end": 17366,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17355,
                                      "end": 17359,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17360,
                                      "end": 17366,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 23
                                        }
                                      },
                                      "name": "__grid"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17367,
                                    "end": 17375,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17376,
                                  "end": 17394,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17397,
                                "end": 17401,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17415,
                            "end": 17462,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 12
                              },
                              "end": {
                                "line": 409,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17415,
                              "end": 17461,
                              "loc": {
                                "start": {
                                  "line": 409,
                                  "column": 12
                                },
                                "end": {
                                  "line": 409,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17415,
                                "end": 17454,
                                "loc": {
                                  "start": {
                                    "line": 409,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 409,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17415,
                                  "end": 17435,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17415,
                                    "end": 17426,
                                    "loc": {
                                      "start": {
                                        "line": 409,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 409,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17415,
                                      "end": 17419,
                                      "loc": {
                                        "start": {
                                          "line": 409,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 409,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17420,
                                      "end": 17426,
                                      "loc": {
                                        "start": {
                                          "line": 409,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 409,
                                          "column": 23
                                        }
                                      },
                                      "name": "__axis"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17427,
                                    "end": 17435,
                                    "loc": {
                                      "start": {
                                        "line": 409,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 409,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17436,
                                  "end": 17454,
                                  "loc": {
                                    "start": {
                                      "line": 409,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 409,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17457,
                                "end": 17461,
                                "loc": {
                                  "start": {
                                    "line": 409,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 409,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17484,
              "end": 17646,
              "loc": {
                "start": {
                  "line": 413,
                  "column": 4
                },
                "end": {
                  "line": 416,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17484,
                "end": 17496,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 4
                  },
                  "end": {
                    "line": 413,
                    "column": 16
                  }
                },
                "name": "calcGridStep"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17496,
                "end": 17646,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 16
                  },
                  "end": {
                    "line": 416,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17497,
                    "end": 17506,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 17
                      },
                      "end": {
                        "line": 413,
                        "column": 26
                      }
                    },
                    "name": "modelSize"
                  },
                  {
                    "type": "Identifier",
                    "start": 17508,
                    "end": 17515,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 28
                      },
                      "end": {
                        "line": 413,
                        "column": 35
                      }
                    },
                    "name": "oldstep"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17517,
                  "end": 17646,
                  "loc": {
                    "start": {
                      "line": 413,
                      "column": 37
                    },
                    "end": {
                      "line": 416,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 17527,
                      "end": 17604,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 8
                        },
                        "end": {
                          "line": 414,
                          "column": 85
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17531,
                          "end": 17603,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 12
                            },
                            "end": {
                              "line": 414,
                              "column": 84
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17531,
                            "end": 17536,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 12
                              },
                              "end": {
                                "line": 414,
                                "column": 17
                              }
                            },
                            "name": "power"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17539,
                            "end": 17603,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 20
                              },
                              "end": {
                                "line": 414,
                                "column": 84
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 17539,
                              "end": 17599,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 20
                                },
                                "end": {
                                  "line": 414,
                                  "column": 80
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17539,
                                "end": 17549,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17539,
                                  "end": 17543,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 24
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17544,
                                  "end": 17549,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 30
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 17550,
                                  "end": 17598,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 79
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 17550,
                                    "end": 17560,
                                    "loc": {
                                      "start": {
                                        "line": 414,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 414,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 17550,
                                      "end": 17554,
                                      "loc": {
                                        "start": {
                                          "line": 414,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 414,
                                          "column": 35
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17555,
                                      "end": 17560,
                                      "loc": {
                                        "start": {
                                          "line": 414,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 414,
                                          "column": 41
                                        }
                                      },
                                      "name": "log10"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 17561,
                                      "end": 17597,
                                      "loc": {
                                        "start": {
                                          "line": 414,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 414,
                                          "column": 78
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 17561,
                                        "end": 17569,
                                        "loc": {
                                          "start": {
                                            "line": 414,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 414,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 17561,
                                          "end": 17565,
                                          "loc": {
                                            "start": {
                                              "line": 414,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 414,
                                              "column": 46
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17566,
                                          "end": 17569,
                                          "loc": {
                                            "start": {
                                              "line": 414,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 414,
                                              "column": 50
                                            }
                                          },
                                          "name": "abs"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "BinaryExpression",
                                          "start": 17570,
                                          "end": 17596,
                                          "loc": {
                                            "start": {
                                              "line": 414,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 414,
                                              "column": 77
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 17570,
                                            "end": 17579,
                                            "loc": {
                                              "start": {
                                                "line": 414,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 414,
                                                "column": 60
                                              }
                                            },
                                            "name": "modelSize"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 17582,
                                            "end": 17596,
                                            "loc": {
                                              "start": {
                                                "line": 414,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 414,
                                                "column": 77
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 17582,
                                              "end": 17586,
                                              "loc": {
                                                "start": {
                                                  "line": 414,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 414,
                                                  "column": 67
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 17587,
                                              "end": 17596,
                                              "loc": {
                                                "start": {
                                                  "line": 414,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 414,
                                                  "column": 77
                                                }
                                              },
                                              "name": "gridScale"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "operator": "-",
                            "right": {
                              "type": "Literal",
                              "start": 17602,
                              "end": 17603,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 83
                                },
                                "end": {
                                  "line": 414,
                                  "column": 84
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17613,
                      "end": 17640,
                      "loc": {
                        "start": {
                          "line": 415,
                          "column": 8
                        },
                        "end": {
                          "line": 415,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 17620,
                        "end": 17639,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 15
                          },
                          "end": {
                            "line": 415,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17620,
                          "end": 17628,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 15
                            },
                            "end": {
                              "line": 415,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17620,
                            "end": 17624,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 15
                              },
                              "end": {
                                "line": 415,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17625,
                            "end": 17628,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 20
                              },
                              "end": {
                                "line": 415,
                                "column": 23
                              }
                            },
                            "name": "pow"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 17629,
                            "end": 17631,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 24
                              },
                              "end": {
                                "line": 415,
                                "column": 26
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Identifier",
                            "start": 17633,
                            "end": 17638,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 28
                              },
                              "end": {
                                "line": 415,
                                "column": 33
                              }
                            },
                            "name": "power"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17652,
              "end": 17878,
              "loc": {
                "start": {
                  "line": 418,
                  "column": 4
                },
                "end": {
                  "line": 423,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17652,
                "end": 17664,
                "loc": {
                  "start": {
                    "line": 418,
                    "column": 4
                  },
                  "end": {
                    "line": 418,
                    "column": 16
                  }
                },
                "name": "calcAxisSize"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17664,
                "end": 17878,
                "loc": {
                  "start": {
                    "line": 418,
                    "column": 16
                  },
                  "end": {
                    "line": 423,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17665,
                    "end": 17669,
                    "loc": {
                      "start": {
                        "line": 418,
                        "column": 17
                      },
                      "end": {
                        "line": 418,
                        "column": 21
                      }
                    },
                    "name": "size"
                  },
                  {
                    "type": "Identifier",
                    "start": 17671,
                    "end": 17675,
                    "loc": {
                      "start": {
                        "line": 418,
                        "column": 23
                      },
                      "end": {
                        "line": 418,
                        "column": 27
                      }
                    },
                    "name": "step"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17677,
                  "end": 17878,
                  "loc": {
                    "start": {
                      "line": 418,
                      "column": 29
                    },
                    "end": {
                      "line": 423,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17687,
                      "end": 17724,
                      "loc": {
                        "start": {
                          "line": 419,
                          "column": 8
                        },
                        "end": {
                          "line": 419,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17691,
                        "end": 17701,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 12
                          },
                          "end": {
                            "line": 419,
                            "column": 22
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17691,
                          "end": 17695,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 12
                            },
                            "end": {
                              "line": 419,
                              "column": 16
                            }
                          },
                          "name": "size"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 17699,
                          "end": 17701,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 20
                            },
                            "end": {
                              "line": 419,
                              "column": 22
                            }
                          },
                          "value": 10,
                          "rawValue": 10,
                          "raw": "10"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 17703,
                        "end": 17724,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 24
                          },
                          "end": {
                            "line": 419,
                            "column": 45
                          }
                        },
                        "argument": {
                          "type": "MemberExpression",
                          "start": 17710,
                          "end": 17723,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 31
                            },
                            "end": {
                              "line": 419,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17710,
                            "end": 17714,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 31
                              },
                              "end": {
                                "line": 419,
                                "column": 35
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17715,
                            "end": 17723,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 36
                              },
                              "end": {
                                "line": 419,
                                "column": 44
                              }
                            },
                            "name": "axisSize"
                          },
                          "computed": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17733,
                      "end": 17788,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 8
                        },
                        "end": {
                          "line": 420,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17737,
                          "end": 17787,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 12
                            },
                            "end": {
                              "line": 420,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17737,
                            "end": 17749,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 12
                              },
                              "end": {
                                "line": 420,
                                "column": 24
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17753,
                            "end": 17787,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 28
                              },
                              "end": {
                                "line": 420,
                                "column": 62
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 17753,
                              "end": 17754,
                              "loc": {
                                "start": {
                                  "line": 420,
                                  "column": 28
                                },
                                "end": {
                                  "line": 420,
                                  "column": 29
                                }
                              },
                              "value": 5,
                              "rawValue": 5,
                              "raw": "5"
                            },
                            "operator": "*",
                            "right": {
                              "type": "CallExpression",
                              "start": 17757,
                              "end": 17787,
                              "loc": {
                                "start": {
                                  "line": 420,
                                  "column": 32
                                },
                                "end": {
                                  "line": 420,
                                  "column": 62
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17757,
                                "end": 17767,
                                "loc": {
                                  "start": {
                                    "line": 420,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 420,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17757,
                                  "end": 17761,
                                  "loc": {
                                    "start": {
                                      "line": 420,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 420,
                                      "column": 36
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17762,
                                  "end": 17767,
                                  "loc": {
                                    "start": {
                                      "line": 420,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 420,
                                      "column": 42
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17768,
                                  "end": 17786,
                                  "loc": {
                                    "start": {
                                      "line": 420,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 420,
                                      "column": 61
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17768,
                                    "end": 17772,
                                    "loc": {
                                      "start": {
                                        "line": 420,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 420,
                                        "column": 47
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17776,
                                    "end": 17785,
                                    "loc": {
                                      "start": {
                                        "line": 420,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 420,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 17776,
                                      "end": 17778,
                                      "loc": {
                                        "start": {
                                          "line": 420,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 420,
                                          "column": 53
                                        }
                                      },
                                      "value": 20,
                                      "rawValue": 20,
                                      "raw": "20"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17781,
                                      "end": 17785,
                                      "loc": {
                                        "start": {
                                          "line": 420,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 420,
                                          "column": 60
                                        }
                                      },
                                      "name": "step"
                                    },
                                    "parenthesizedExpression": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 17797,
                      "end": 17836,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 8
                        },
                        "end": {
                          "line": 421,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17801,
                        "end": 17817,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 12
                          },
                          "end": {
                            "line": 421,
                            "column": 28
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17801,
                          "end": 17813,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 24
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Literal",
                          "start": 17816,
                          "end": 17817,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 27
                            },
                            "end": {
                              "line": 421,
                              "column": 28
                            }
                          },
                          "value": 5,
                          "rawValue": 5,
                          "raw": "5"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17819,
                        "end": 17836,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 30
                          },
                          "end": {
                            "line": 421,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17819,
                          "end": 17835,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 30
                            },
                            "end": {
                              "line": 421,
                              "column": 46
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17819,
                            "end": 17831,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 30
                              },
                              "end": {
                                "line": 421,
                                "column": 42
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 17834,
                            "end": 17835,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 45
                              },
                              "end": {
                                "line": 421,
                                "column": 46
                              }
                            },
                            "value": 5,
                            "rawValue": 5,
                            "raw": "5"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17845,
                      "end": 17872,
                      "loc": {
                        "start": {
                          "line": 422,
                          "column": 8
                        },
                        "end": {
                          "line": 422,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 17852,
                        "end": 17871,
                        "loc": {
                          "start": {
                            "line": 422,
                            "column": 15
                          },
                          "end": {
                            "line": 422,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17852,
                          "end": 17864,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 15
                            },
                            "end": {
                              "line": 422,
                              "column": 27
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 17867,
                          "end": 17871,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 30
                            },
                            "end": {
                              "line": 422,
                              "column": 34
                            }
                          },
                          "name": "step"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17884,
              "end": 18945,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 4
                },
                "end": {
                  "line": 453,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17884,
                "end": 17903,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 4
                  },
                  "end": {
                    "line": 425,
                    "column": 23
                  }
                },
                "name": "getClosestGeomPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17903,
                "end": 18945,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 23
                  },
                  "end": {
                    "line": 453,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17904,
                    "end": 17912,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 24
                      },
                      "end": {
                        "line": 425,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 17914,
                    "end": 17925,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 34
                      },
                      "end": {
                        "line": 425,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 17927,
                    "end": 17939,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 47
                      },
                      "end": {
                        "line": 425,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17941,
                  "end": 18945,
                  "loc": {
                    "start": {
                      "line": 425,
                      "column": 61
                    },
                    "end": {
                      "line": 453,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17951,
                      "end": 18029,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 8
                        },
                        "end": {
                          "line": 427,
                          "column": 59
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 17955,
                        "end": 17968,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 12
                          },
                          "end": {
                            "line": 426,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 17956,
                          "end": 17968,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 13
                            },
                            "end": {
                              "line": 426,
                              "column": 25
                            }
                          },
                          "name": "ignoreFilter"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17982,
                        "end": 18029,
                        "loc": {
                          "start": {
                            "line": 427,
                            "column": 12
                          },
                          "end": {
                            "line": 427,
                            "column": 59
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17982,
                          "end": 18028,
                          "loc": {
                            "start": {
                              "line": 427,
                              "column": 12
                            },
                            "end": {
                              "line": 427,
                              "column": 58
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17982,
                            "end": 17994,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 12
                              },
                              "end": {
                                "line": 427,
                                "column": 24
                              }
                            },
                            "name": "ignoreFilter"
                          },
                          "right": {
                            "type": "FunctionExpression",
                            "start": 17997,
                            "end": 18028,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 27
                              },
                              "end": {
                                "line": 427,
                                "column": 58
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18006,
                                "end": 18009,
                                "loc": {
                                  "start": {
                                    "line": 427,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 427,
                                    "column": 39
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 18011,
                              "end": 18028,
                              "loc": {
                                "start": {
                                  "line": 427,
                                  "column": 41
                                },
                                "end": {
                                  "line": 427,
                                  "column": 58
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 18013,
                                  "end": 18026,
                                  "loc": {
                                    "start": {
                                      "line": 427,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 427,
                                      "column": 56
                                    }
                                  },
                                  "argument": {
                                    "type": "Literal",
                                    "start": 18020,
                                    "end": 18025,
                                    "loc": {
                                      "start": {
                                        "line": 427,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 427,
                                        "column": 55
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  }
                                }
                              ]
                            }
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18039,
                      "end": 18066,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 8
                        },
                        "end": {
                          "line": 429,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18043,
                          "end": 18065,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 12
                            },
                            "end": {
                              "line": 429,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18043,
                            "end": 18051,
                            "loc": {
                              "start": {
                                "line": 429,
                                "column": 12
                              },
                              "end": {
                                "line": 429,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 18054,
                            "end": 18065,
                            "loc": {
                              "start": {
                                "line": 429,
                                "column": 23
                              },
                              "end": {
                                "line": 429,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18075,
                      "end": 18111,
                      "loc": {
                        "start": {
                          "line": 430,
                          "column": 8
                        },
                        "end": {
                          "line": 430,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18079,
                          "end": 18110,
                          "loc": {
                            "start": {
                              "line": 430,
                              "column": 12
                            },
                            "end": {
                              "line": 430,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18079,
                            "end": 18091,
                            "loc": {
                              "start": {
                                "line": 430,
                                "column": 12
                              },
                              "end": {
                                "line": 430,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18094,
                            "end": 18110,
                            "loc": {
                              "start": {
                                "line": 430,
                                "column": 27
                              },
                              "end": {
                                "line": 430,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18094,
                              "end": 18108,
                              "loc": {
                                "start": {
                                  "line": 430,
                                  "column": 27
                                },
                                "end": {
                                  "line": 430,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18094,
                                "end": 18102,
                                "loc": {
                                  "start": {
                                    "line": 430,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 430,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18103,
                                "end": 18108,
                                "loc": {
                                  "start": {
                                    "line": 430,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 430,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18120,
                      "end": 18142,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 8
                        },
                        "end": {
                          "line": 431,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18124,
                          "end": 18141,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 12
                            },
                            "end": {
                              "line": 431,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18124,
                            "end": 18133,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 12
                              },
                              "end": {
                                "line": 431,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 18136,
                            "end": 18141,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 24
                              },
                              "end": {
                                "line": 431,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18151,
                      "end": 18771,
                      "loc": {
                        "start": {
                          "line": 432,
                          "column": 8
                        },
                        "end": {
                          "line": 446,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18151,
                        "end": 18770,
                        "loc": {
                          "start": {
                            "line": 432,
                            "column": 8
                          },
                          "end": {
                            "line": 446,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18151,
                          "end": 18184,
                          "loc": {
                            "start": {
                              "line": 432,
                              "column": 8
                            },
                            "end": {
                              "line": 432,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 18151,
                            "end": 18176,
                            "loc": {
                              "start": {
                                "line": 432,
                                "column": 8
                              },
                              "end": {
                                "line": 432,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18151,
                              "end": 18174,
                              "loc": {
                                "start": {
                                  "line": 432,
                                  "column": 8
                                },
                                "end": {
                                  "line": 432,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18151,
                                "end": 18155,
                                "loc": {
                                  "start": {
                                    "line": 432,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 432,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18156,
                                "end": 18174,
                                "loc": {
                                  "start": {
                                    "line": 432,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 432,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18177,
                            "end": 18184,
                            "loc": {
                              "start": {
                                "line": 432,
                                "column": 34
                              },
                              "end": {
                                "line": 432,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 18185,
                            "end": 18769,
                            "loc": {
                              "start": {
                                "line": 432,
                                "column": 42
                              },
                              "end": {
                                "line": 446,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18185,
                                "end": 18188,
                                "loc": {
                                  "start": {
                                    "line": 432,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 432,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 18193,
                              "end": 18769,
                              "loc": {
                                "start": {
                                  "line": 432,
                                  "column": 50
                                },
                                "end": {
                                  "line": 446,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 18207,
                                  "end": 18759,
                                  "loc": {
                                    "start": {
                                      "line": 433,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 445,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 18207,
                                    "end": 18758,
                                    "loc": {
                                      "start": {
                                        "line": 433,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 445,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 18207,
                                      "end": 18236,
                                      "loc": {
                                        "start": {
                                          "line": 433,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 433,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 18207,
                                        "end": 18213,
                                        "loc": {
                                          "start": {
                                            "line": 433,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 433,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18214,
                                        "end": 18236,
                                        "loc": {
                                          "start": {
                                            "line": 433,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 433,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 18237,
                                        "end": 18240,
                                        "loc": {
                                          "start": {
                                            "line": 433,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 433,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 18242,
                                        "end": 18757,
                                        "loc": {
                                          "start": {
                                            "line": 433,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 445,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 18251,
                                            "end": 18256,
                                            "loc": {
                                              "start": {
                                                "line": 433,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 433,
                                                "column": 61
                                              }
                                            },
                                            "name": "child"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 18258,
                                          "end": 18757,
                                          "loc": {
                                            "start": {
                                              "line": 433,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 445,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 18276,
                                              "end": 18328,
                                              "loc": {
                                                "start": {
                                                  "line": 434,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 435,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 18280,
                                                "end": 18299,
                                                "loc": {
                                                  "start": {
                                                    "line": 434,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 434,
                                                    "column": 39
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 18280,
                                                  "end": 18292,
                                                  "loc": {
                                                    "start": {
                                                      "line": 434,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 434,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "ignoreFilter"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 18293,
                                                    "end": 18298,
                                                    "loc": {
                                                      "start": {
                                                        "line": 434,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 434,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "child"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 18321,
                                                "end": 18328,
                                                "loc": {
                                                  "start": {
                                                    "line": 435,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 435,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "IfStatement",
                                              "start": 18345,
                                              "end": 18743,
                                              "loc": {
                                                "start": {
                                                  "line": 436,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 444,
                                                  "column": 17
                                                }
                                              },
                                              "test": {
                                                "type": "BinaryExpression",
                                                "start": 18349,
                                                "end": 18371,
                                                "loc": {
                                                  "start": {
                                                    "line": 436,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 436,
                                                    "column": 42
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 18349,
                                                  "end": 18354,
                                                  "loc": {
                                                    "start": {
                                                      "line": 436,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 436,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "child"
                                                },
                                                "operator": "instanceof",
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 18366,
                                                  "end": 18371,
                                                  "loc": {
                                                    "start": {
                                                      "line": 436,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 436,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "Point"
                                                }
                                              },
                                              "consequent": {
                                                "type": "BlockStatement",
                                                "start": 18373,
                                                "end": 18743,
                                                "loc": {
                                                  "start": {
                                                    "line": 436,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 444,
                                                    "column": 17
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18395,
                                                    "end": 18413,
                                                    "loc": {
                                                      "start": {
                                                        "line": 437,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 437,
                                                        "column": 38
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18399,
                                                        "end": 18412,
                                                        "loc": {
                                                          "start": {
                                                            "line": 437,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 437,
                                                            "column": 37
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18399,
                                                          "end": 18404,
                                                          "loc": {
                                                            "start": {
                                                              "line": 437,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 437,
                                                              "column": 29
                                                            }
                                                          },
                                                          "name": "point"
                                                        },
                                                        "init": {
                                                          "type": "Identifier",
                                                          "start": 18407,
                                                          "end": 18412,
                                                          "loc": {
                                                            "start": {
                                                              "line": 437,
                                                              "column": 32
                                                            },
                                                            "end": {
                                                              "line": 437,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "child"
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18434,
                                                    "end": 18492,
                                                    "loc": {
                                                      "start": {
                                                        "line": 438,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 438,
                                                        "column": 78
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18438,
                                                        "end": 18491,
                                                        "loc": {
                                                          "start": {
                                                            "line": 438,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 438,
                                                            "column": 77
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18438,
                                                          "end": 18453,
                                                          "loc": {
                                                            "start": {
                                                              "line": 438,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 438,
                                                              "column": 39
                                                            }
                                                          },
                                                          "name": "currentDistance"
                                                        },
                                                        "init": {
                                                          "type": "CallExpression",
                                                          "start": 18456,
                                                          "end": 18491,
                                                          "loc": {
                                                            "start": {
                                                              "line": 438,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 438,
                                                              "column": 77
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 18456,
                                                            "end": 18481,
                                                            "loc": {
                                                              "start": {
                                                                "line": 438,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 438,
                                                                "column": 67
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 18456,
                                                              "end": 18470,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 438,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 438,
                                                                  "column": 56
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 18456,
                                                                "end": 18461,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 438,
                                                                    "column": 42
                                                                  },
                                                                  "end": {
                                                                    "line": 438,
                                                                    "column": 47
                                                                  }
                                                                },
                                                                "name": "point"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 18462,
                                                                "end": 18470,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 438,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 438,
                                                                    "column": 56
                                                                  }
                                                                },
                                                                "name": "position"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 18471,
                                                              "end": 18481,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 438,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 438,
                                                                  "column": 67
                                                                }
                                                              },
                                                              "name": "distanceTo"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 18482,
                                                              "end": 18490,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 438,
                                                                  "column": 68
                                                                },
                                                                "end": {
                                                                  "line": 438,
                                                                  "column": 76
                                                                }
                                                              },
                                                              "name": "newPoint"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "IfStatement",
                                                    "start": 18513,
                                                    "end": 18725,
                                                    "loc": {
                                                      "start": {
                                                        "line": 439,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 443,
                                                        "column": 21
                                                      }
                                                    },
                                                    "test": {
                                                      "type": "BinaryExpression",
                                                      "start": 18517,
                                                      "end": 18543,
                                                      "loc": {
                                                        "start": {
                                                          "line": 439,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 439,
                                                          "column": 50
                                                        }
                                                      },
                                                      "left": {
                                                        "type": "Identifier",
                                                        "start": 18517,
                                                        "end": 18532,
                                                        "loc": {
                                                          "start": {
                                                            "line": 439,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 439,
                                                            "column": 39
                                                          }
                                                        },
                                                        "name": "currentDistance"
                                                      },
                                                      "operator": "<",
                                                      "right": {
                                                        "type": "Identifier",
                                                        "start": 18535,
                                                        "end": 18543,
                                                        "loc": {
                                                          "start": {
                                                            "line": 439,
                                                            "column": 42
                                                          },
                                                          "end": {
                                                            "line": 439,
                                                            "column": 50
                                                          }
                                                        },
                                                        "name": "distance"
                                                      }
                                                    },
                                                    "consequent": {
                                                      "type": "BlockStatement",
                                                      "start": 18545,
                                                      "end": 18725,
                                                      "loc": {
                                                        "start": {
                                                          "line": 439,
                                                          "column": 52
                                                        },
                                                        "end": {
                                                          "line": 443,
                                                          "column": 21
                                                        }
                                                      },
                                                      "body": [
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18571,
                                                          "end": 18598,
                                                          "loc": {
                                                            "start": {
                                                              "line": 440,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 440,
                                                              "column": 51
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18571,
                                                            "end": 18597,
                                                            "loc": {
                                                              "start": {
                                                                "line": 440,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 440,
                                                                "column": 50
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18571,
                                                              "end": 18579,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 440,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 440,
                                                                  "column": 32
                                                                }
                                                              },
                                                              "name": "distance"
                                                            },
                                                            "right": {
                                                              "type": "Identifier",
                                                              "start": 18582,
                                                              "end": 18597,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 440,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 440,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "name": "currentDistance"
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18623,
                                                          "end": 18661,
                                                          "loc": {
                                                            "start": {
                                                              "line": 441,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 441,
                                                              "column": 62
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18623,
                                                            "end": 18660,
                                                            "loc": {
                                                              "start": {
                                                                "line": 441,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 441,
                                                                "column": 61
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18623,
                                                              "end": 18635,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 441,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 441,
                                                                  "column": 36
                                                                }
                                                              },
                                                              "name": "closestPoint"
                                                            },
                                                            "right": {
                                                              "type": "CallExpression",
                                                              "start": 18638,
                                                              "end": 18660,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 441,
                                                                  "column": 39
                                                                },
                                                                "end": {
                                                                  "line": 441,
                                                                  "column": 61
                                                                }
                                                              },
                                                              "callee": {
                                                                "type": "MemberExpression",
                                                                "start": 18638,
                                                                "end": 18658,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 441,
                                                                    "column": 39
                                                                  },
                                                                  "end": {
                                                                    "line": 441,
                                                                    "column": 59
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 18638,
                                                                  "end": 18652,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 441,
                                                                      "column": 39
                                                                    },
                                                                    "end": {
                                                                      "line": 441,
                                                                      "column": 53
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "Identifier",
                                                                    "start": 18638,
                                                                    "end": 18643,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 441,
                                                                        "column": 39
                                                                      },
                                                                      "end": {
                                                                        "line": 441,
                                                                        "column": 44
                                                                      }
                                                                    },
                                                                    "name": "point"
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 18644,
                                                                    "end": 18652,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 441,
                                                                        "column": 45
                                                                      },
                                                                      "end": {
                                                                        "line": 441,
                                                                        "column": 53
                                                                      }
                                                                    },
                                                                    "name": "position"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 18653,
                                                                  "end": 18658,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 441,
                                                                      "column": 54
                                                                    },
                                                                    "end": {
                                                                      "line": 441,
                                                                      "column": 59
                                                                    }
                                                                  },
                                                                  "name": "clone"
                                                                },
                                                                "computed": false
                                                              },
                                                              "arguments": []
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18686,
                                                          "end": 18703,
                                                          "loc": {
                                                            "start": {
                                                              "line": 442,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 442,
                                                              "column": 41
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18686,
                                                            "end": 18702,
                                                            "loc": {
                                                              "start": {
                                                                "line": 442,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 442,
                                                                "column": 40
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18686,
                                                              "end": 18695,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 442,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 442,
                                                                  "column": 33
                                                                }
                                                              },
                                                              "name": "isSnapped"
                                                            },
                                                            "right": {
                                                              "type": "Literal",
                                                              "start": 18698,
                                                              "end": 18702,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 442,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 442,
                                                                  "column": 40
                                                                }
                                                              },
                                                              "value": true,
                                                              "rawValue": true,
                                                              "raw": "true"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    "alternate": null
                                                  }
                                                ]
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 18781,
                      "end": 18939,
                      "loc": {
                        "start": {
                          "line": 448,
                          "column": 8
                        },
                        "end": {
                          "line": 452,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 18788,
                        "end": 18938,
                        "loc": {
                          "start": {
                            "line": 448,
                            "column": 15
                          },
                          "end": {
                            "line": 452,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 18802,
                            "end": 18831,
                            "loc": {
                              "start": {
                                "line": 449,
                                "column": 12
                              },
                              "end": {
                                "line": 449,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18802,
                              "end": 18817,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 12
                                },
                                "end": {
                                  "line": 449,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18819,
                              "end": 18831,
                              "loc": {
                                "start": {
                                  "line": 449,
                                  "column": 29
                                },
                                "end": {
                                  "line": 449,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18845,
                            "end": 18894,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 12
                              },
                              "end": {
                                "line": 450,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18845,
                              "end": 18858,
                              "loc": {
                                "start": {
                                  "line": 450,
                                  "column": 12
                                },
                                "end": {
                                  "line": 450,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 18860,
                              "end": 18894,
                              "loc": {
                                "start": {
                                  "line": 450,
                                  "column": 27
                                },
                                "end": {
                                  "line": 450,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18860,
                                "end": 18884,
                                "loc": {
                                  "start": {
                                    "line": 450,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 450,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 18860,
                                  "end": 18880,
                                  "loc": {
                                    "start": {
                                      "line": 450,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 450,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18860,
                                    "end": 18878,
                                    "loc": {
                                      "start": {
                                        "line": 450,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 450,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18860,
                                      "end": 18872,
                                      "loc": {
                                        "start": {
                                          "line": 450,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 450,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18873,
                                      "end": 18878,
                                      "loc": {
                                        "start": {
                                          "line": 450,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 450,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18881,
                                  "end": 18884,
                                  "loc": {
                                    "start": {
                                      "line": 450,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 450,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 18885,
                                  "end": 18893,
                                  "loc": {
                                    "start": {
                                      "line": 450,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 450,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18908,
                            "end": 18928,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 12
                              },
                              "end": {
                                "line": 451,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18908,
                              "end": 18917,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 12
                                },
                                "end": {
                                  "line": 451,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18919,
                              "end": 18928,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 23
                                },
                                "end": {
                                  "line": 451,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18951,
              "end": 19758,
              "loc": {
                "start": {
                  "line": 455,
                  "column": 4
                },
                "end": {
                  "line": 474,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18951,
                "end": 18970,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 4
                  },
                  "end": {
                    "line": 455,
                    "column": 23
                  }
                },
                "name": "getClosestGridPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18970,
                "end": 19758,
                "loc": {
                  "start": {
                    "line": 455,
                    "column": 23
                  },
                  "end": {
                    "line": 474,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18971,
                    "end": 18979,
                    "loc": {
                      "start": {
                        "line": 455,
                        "column": 24
                      },
                      "end": {
                        "line": 455,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 18981,
                    "end": 18992,
                    "loc": {
                      "start": {
                        "line": 455,
                        "column": 34
                      },
                      "end": {
                        "line": 455,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 18994,
                    "end": 19006,
                    "loc": {
                      "start": {
                        "line": 455,
                        "column": 47
                      },
                      "end": {
                        "line": 455,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19008,
                  "end": 19758,
                  "loc": {
                    "start": {
                      "line": 455,
                      "column": 61
                    },
                    "end": {
                      "line": 474,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19018,
                      "end": 19054,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 8
                        },
                        "end": {
                          "line": 456,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19022,
                          "end": 19053,
                          "loc": {
                            "start": {
                              "line": 456,
                              "column": 12
                            },
                            "end": {
                              "line": 456,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19022,
                            "end": 19034,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 12
                              },
                              "end": {
                                "line": 456,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19037,
                            "end": 19053,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 27
                              },
                              "end": {
                                "line": 456,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19037,
                              "end": 19051,
                              "loc": {
                                "start": {
                                  "line": 456,
                                  "column": 27
                                },
                                "end": {
                                  "line": 456,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19037,
                                "end": 19045,
                                "loc": {
                                  "start": {
                                    "line": 456,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 456,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19046,
                                "end": 19051,
                                "loc": {
                                  "start": {
                                    "line": 456,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 456,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19063,
                      "end": 19085,
                      "loc": {
                        "start": {
                          "line": 457,
                          "column": 8
                        },
                        "end": {
                          "line": 457,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19067,
                          "end": 19084,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 12
                            },
                            "end": {
                              "line": 457,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19067,
                            "end": 19076,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 19079,
                            "end": 19084,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 24
                              },
                              "end": {
                                "line": 457,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19094,
                      "end": 19584,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 8
                        },
                        "end": {
                          "line": 467,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19098,
                        "end": 19117,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 12
                          },
                          "end": {
                            "line": 458,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 19098,
                          "end": 19111,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 12
                            },
                            "end": {
                              "line": 458,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19098,
                            "end": 19102,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 12
                              },
                              "end": {
                                "line": 458,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19103,
                            "end": 19111,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 17
                              },
                              "end": {
                                "line": 458,
                                "column": 25
                              }
                            },
                            "name": "gridStep"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "Literal",
                          "start": 19114,
                          "end": 19117,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 28
                            },
                            "end": {
                              "line": 458,
                              "column": 31
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0.0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19119,
                        "end": 19584,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 33
                          },
                          "end": {
                            "line": 467,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 19133,
                            "end": 19191,
                            "loc": {
                              "start": {
                                "line": 459,
                                "column": 12
                              },
                              "end": {
                                "line": 459,
                                "column": 70
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19137,
                                "end": 19190,
                                "loc": {
                                  "start": {
                                    "line": 459,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 459,
                                    "column": 69
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19137,
                                  "end": 19145,
                                  "loc": {
                                    "start": {
                                      "line": 459,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 459,
                                      "column": 24
                                    }
                                  },
                                  "name": "distance"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 19148,
                                  "end": 19190,
                                  "loc": {
                                    "start": {
                                      "line": 459,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 459,
                                      "column": 69
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19148,
                                    "end": 19156,
                                    "loc": {
                                      "start": {
                                        "line": 459,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 459,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19148,
                                      "end": 19152,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 31
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19153,
                                      "end": 19156,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 35
                                        }
                                      },
                                      "name": "min"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 19157,
                                      "end": 19168,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 47
                                        }
                                      },
                                      "name": "maxDistance"
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 19170,
                                      "end": 19189,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 68
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 19170,
                                        "end": 19183,
                                        "loc": {
                                          "start": {
                                            "line": 459,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 459,
                                            "column": 62
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19170,
                                          "end": 19174,
                                          "loc": {
                                            "start": {
                                              "line": 459,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 459,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19175,
                                          "end": 19183,
                                          "loc": {
                                            "start": {
                                              "line": 459,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 459,
                                              "column": 62
                                            }
                                          },
                                          "name": "gridStep"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 19186,
                                        "end": 19189,
                                        "loc": {
                                          "start": {
                                            "line": 459,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 459,
                                            "column": 68
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3.0"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19204,
                            "end": 19267,
                            "loc": {
                              "start": {
                                "line": 460,
                                "column": 12
                              },
                              "end": {
                                "line": 460,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19208,
                                "end": 19266,
                                "loc": {
                                  "start": {
                                    "line": 460,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 460,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19208,
                                  "end": 19209,
                                  "loc": {
                                    "start": {
                                      "line": 460,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 460,
                                      "column": 17
                                    }
                                  },
                                  "name": "x"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19212,
                                  "end": 19266,
                                  "loc": {
                                    "start": {
                                      "line": 460,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 460,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19212,
                                    "end": 19250,
                                    "loc": {
                                      "start": {
                                        "line": 460,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 460,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19212,
                                      "end": 19222,
                                      "loc": {
                                        "start": {
                                          "line": 460,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 460,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19212,
                                        "end": 19216,
                                        "loc": {
                                          "start": {
                                            "line": 460,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 460,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19217,
                                        "end": 19222,
                                        "loc": {
                                          "start": {
                                            "line": 460,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 460,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19223,
                                        "end": 19249,
                                        "loc": {
                                          "start": {
                                            "line": 460,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 460,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19223,
                                          "end": 19233,
                                          "loc": {
                                            "start": {
                                              "line": 460,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 460,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19223,
                                            "end": 19231,
                                            "loc": {
                                              "start": {
                                                "line": 460,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 460,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19232,
                                            "end": 19233,
                                            "loc": {
                                              "start": {
                                                "line": 460,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 460,
                                                "column": 41
                                              }
                                            },
                                            "name": "x"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19236,
                                          "end": 19249,
                                          "loc": {
                                            "start": {
                                              "line": 460,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 460,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19236,
                                            "end": 19240,
                                            "loc": {
                                              "start": {
                                                "line": 460,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 460,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19241,
                                            "end": 19249,
                                            "loc": {
                                              "start": {
                                                "line": 460,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 460,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19253,
                                    "end": 19266,
                                    "loc": {
                                      "start": {
                                        "line": 460,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 460,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19253,
                                      "end": 19257,
                                      "loc": {
                                        "start": {
                                          "line": 460,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 460,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19258,
                                      "end": 19266,
                                      "loc": {
                                        "start": {
                                          "line": 460,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 460,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19280,
                            "end": 19343,
                            "loc": {
                              "start": {
                                "line": 461,
                                "column": 12
                              },
                              "end": {
                                "line": 461,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19284,
                                "end": 19342,
                                "loc": {
                                  "start": {
                                    "line": 461,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 461,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19284,
                                  "end": 19285,
                                  "loc": {
                                    "start": {
                                      "line": 461,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 461,
                                      "column": 17
                                    }
                                  },
                                  "name": "y"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19288,
                                  "end": 19342,
                                  "loc": {
                                    "start": {
                                      "line": 461,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 461,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19288,
                                    "end": 19326,
                                    "loc": {
                                      "start": {
                                        "line": 461,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 461,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19288,
                                      "end": 19298,
                                      "loc": {
                                        "start": {
                                          "line": 461,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 461,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19288,
                                        "end": 19292,
                                        "loc": {
                                          "start": {
                                            "line": 461,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 461,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19293,
                                        "end": 19298,
                                        "loc": {
                                          "start": {
                                            "line": 461,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 461,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19299,
                                        "end": 19325,
                                        "loc": {
                                          "start": {
                                            "line": 461,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 461,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19299,
                                          "end": 19309,
                                          "loc": {
                                            "start": {
                                              "line": 461,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 461,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19299,
                                            "end": 19307,
                                            "loc": {
                                              "start": {
                                                "line": 461,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 461,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19308,
                                            "end": 19309,
                                            "loc": {
                                              "start": {
                                                "line": 461,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 461,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19312,
                                          "end": 19325,
                                          "loc": {
                                            "start": {
                                              "line": 461,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 461,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19312,
                                            "end": 19316,
                                            "loc": {
                                              "start": {
                                                "line": 461,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 461,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19317,
                                            "end": 19325,
                                            "loc": {
                                              "start": {
                                                "line": 461,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 461,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19329,
                                    "end": 19342,
                                    "loc": {
                                      "start": {
                                        "line": 461,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 461,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19329,
                                      "end": 19333,
                                      "loc": {
                                        "start": {
                                          "line": 461,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 461,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19334,
                                      "end": 19342,
                                      "loc": {
                                        "start": {
                                          "line": 461,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 461,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 19356,
                            "end": 19574,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 12
                              },
                              "end": {
                                "line": 466,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19360,
                              "end": 19451,
                              "loc": {
                                "start": {
                                  "line": 462,
                                  "column": 16
                                },
                                "end": {
                                  "line": 462,
                                  "column": 107
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 19361,
                                "end": 19430,
                                "loc": {
                                  "start": {
                                    "line": 462,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 462,
                                    "column": 86
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 19361,
                                  "end": 19394,
                                  "loc": {
                                    "start": {
                                      "line": 462,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 462,
                                      "column": 50
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19362,
                                    "end": 19376,
                                    "loc": {
                                      "start": {
                                        "line": 462,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 462,
                                        "column": 32
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19362,
                                      "end": 19363,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 19
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19366,
                                      "end": 19376,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19366,
                                        "end": 19374,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 30
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19375,
                                        "end": 19376,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 32
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19379,
                                    "end": 19393,
                                    "loc": {
                                      "start": {
                                        "line": 462,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 462,
                                        "column": 49
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19379,
                                      "end": 19380,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 36
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19383,
                                      "end": 19393,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19383,
                                        "end": 19391,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 47
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19392,
                                        "end": 19393,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 49
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 19397,
                                  "end": 19430,
                                  "loc": {
                                    "start": {
                                      "line": 462,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 462,
                                      "column": 86
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19398,
                                    "end": 19412,
                                    "loc": {
                                      "start": {
                                        "line": 462,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 462,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19398,
                                      "end": 19399,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 55
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19402,
                                      "end": 19412,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19402,
                                        "end": 19410,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 66
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19411,
                                        "end": 19412,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 68
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19415,
                                    "end": 19429,
                                    "loc": {
                                      "start": {
                                        "line": 462,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 462,
                                        "column": 85
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19415,
                                      "end": 19416,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 72
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19419,
                                      "end": 19429,
                                      "loc": {
                                        "start": {
                                          "line": 462,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 462,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19419,
                                        "end": 19427,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 83
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19428,
                                        "end": 19429,
                                        "loc": {
                                          "start": {
                                            "line": 462,
                                            "column": 84
                                          },
                                          "end": {
                                            "line": 462,
                                            "column": 85
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "<",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 19434,
                                "end": 19451,
                                "loc": {
                                  "start": {
                                    "line": 462,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 462,
                                    "column": 107
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 19434,
                                  "end": 19442,
                                  "loc": {
                                    "start": {
                                      "line": 462,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 462,
                                      "column": 98
                                    }
                                  },
                                  "name": "distance"
                                },
                                "operator": "*",
                                "right": {
                                  "type": "Identifier",
                                  "start": 19443,
                                  "end": 19451,
                                  "loc": {
                                    "start": {
                                      "line": 462,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 462,
                                      "column": 107
                                    }
                                  },
                                  "name": "distance"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 19453,
                              "end": 19574,
                              "loc": {
                                "start": {
                                  "line": 462,
                                  "column": 109
                                },
                                "end": {
                                  "line": 466,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19471,
                                  "end": 19490,
                                  "loc": {
                                    "start": {
                                      "line": 463,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 463,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19471,
                                    "end": 19489,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19471,
                                      "end": 19485,
                                      "loc": {
                                        "start": {
                                          "line": 463,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 463,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19471,
                                        "end": 19483,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19484,
                                        "end": 19485,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 30
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19488,
                                      "end": 19489,
                                      "loc": {
                                        "start": {
                                          "line": 463,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 463,
                                          "column": 34
                                        }
                                      },
                                      "name": "x"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19507,
                                  "end": 19526,
                                  "loc": {
                                    "start": {
                                      "line": 464,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 464,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19507,
                                    "end": 19525,
                                    "loc": {
                                      "start": {
                                        "line": 464,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 464,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19507,
                                      "end": 19521,
                                      "loc": {
                                        "start": {
                                          "line": 464,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 464,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19507,
                                        "end": 19519,
                                        "loc": {
                                          "start": {
                                            "line": 464,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 464,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19520,
                                        "end": 19521,
                                        "loc": {
                                          "start": {
                                            "line": 464,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 464,
                                            "column": 30
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19524,
                                      "end": 19525,
                                      "loc": {
                                        "start": {
                                          "line": 464,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 464,
                                          "column": 34
                                        }
                                      },
                                      "name": "y"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19543,
                                  "end": 19560,
                                  "loc": {
                                    "start": {
                                      "line": 465,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 465,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19543,
                                    "end": 19559,
                                    "loc": {
                                      "start": {
                                        "line": 465,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 465,
                                        "column": 32
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19543,
                                      "end": 19552,
                                      "loc": {
                                        "start": {
                                          "line": 465,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 465,
                                          "column": 25
                                        }
                                      },
                                      "name": "isSnapped"
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 19555,
                                      "end": 19559,
                                      "loc": {
                                        "start": {
                                          "line": 465,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 465,
                                          "column": 32
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19594,
                      "end": 19752,
                      "loc": {
                        "start": {
                          "line": 469,
                          "column": 8
                        },
                        "end": {
                          "line": 473,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 19601,
                        "end": 19751,
                        "loc": {
                          "start": {
                            "line": 469,
                            "column": 15
                          },
                          "end": {
                            "line": 473,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 19615,
                            "end": 19644,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 12
                              },
                              "end": {
                                "line": 470,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19615,
                              "end": 19630,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 12
                                },
                                "end": {
                                  "line": 470,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19632,
                              "end": 19644,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 29
                                },
                                "end": {
                                  "line": 470,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19658,
                            "end": 19707,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 12
                              },
                              "end": {
                                "line": 471,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19658,
                              "end": 19671,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 12
                                },
                                "end": {
                                  "line": 471,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 19673,
                              "end": 19707,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 27
                                },
                                "end": {
                                  "line": 471,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19673,
                                "end": 19697,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19673,
                                  "end": 19693,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19673,
                                    "end": 19691,
                                    "loc": {
                                      "start": {
                                        "line": 471,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 471,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19673,
                                      "end": 19685,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19686,
                                      "end": 19691,
                                      "loc": {
                                        "start": {
                                          "line": 471,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 471,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19694,
                                  "end": 19697,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 19698,
                                  "end": 19706,
                                  "loc": {
                                    "start": {
                                      "line": 471,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 471,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19721,
                            "end": 19741,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 12
                              },
                              "end": {
                                "line": 472,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19721,
                              "end": 19730,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 12
                                },
                                "end": {
                                  "line": 472,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19732,
                              "end": 19741,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 23
                                },
                                "end": {
                                  "line": 472,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19764,
              "end": 20370,
              "loc": {
                "start": {
                  "line": 476,
                  "column": 4
                },
                "end": {
                  "line": 485,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19764,
                "end": 19783,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 4
                  },
                  "end": {
                    "line": 476,
                    "column": 23
                  }
                },
                "name": "getClosestSnapPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19783,
                "end": 20370,
                "loc": {
                  "start": {
                    "line": 476,
                    "column": 23
                  },
                  "end": {
                    "line": 485,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 19784,
                    "end": 19792,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 24
                      },
                      "end": {
                        "line": 476,
                        "column": 32
                      }
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 19794,
                    "end": 19805,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 34
                      },
                      "end": {
                        "line": 476,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 19807,
                    "end": 19819,
                    "loc": {
                      "start": {
                        "line": 476,
                        "column": 47
                      },
                      "end": {
                        "line": 476,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19821,
                  "end": 20370,
                  "loc": {
                    "start": {
                      "line": 476,
                      "column": 61
                    },
                    "end": {
                      "line": 485,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19831,
                      "end": 19863,
                      "loc": {
                        "start": {
                          "line": 477,
                          "column": 8
                        },
                        "end": {
                          "line": 477,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19835,
                          "end": 19862,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 12
                            },
                            "end": {
                              "line": 477,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19835,
                            "end": 19843,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 12
                              },
                              "end": {
                                "line": 477,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19846,
                            "end": 19862,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 23
                              },
                              "end": {
                                "line": 477,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19846,
                              "end": 19860,
                              "loc": {
                                "start": {
                                  "line": 477,
                                  "column": 23
                                },
                                "end": {
                                  "line": 477,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19846,
                                "end": 19854,
                                "loc": {
                                  "start": {
                                    "line": 477,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 477,
                                    "column": 31
                                  }
                                },
                                "name": "position"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19855,
                                "end": 19860,
                                "loc": {
                                  "start": {
                                    "line": 477,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 477,
                                    "column": 37
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19872,
                      "end": 19957,
                      "loc": {
                        "start": {
                          "line": 478,
                          "column": 8
                        },
                        "end": {
                          "line": 478,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19876,
                          "end": 19956,
                          "loc": {
                            "start": {
                              "line": 478,
                              "column": 12
                            },
                            "end": {
                              "line": 478,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19876,
                            "end": 19892,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 12
                              },
                              "end": {
                                "line": 478,
                                "column": 28
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19895,
                            "end": 19956,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 31
                              },
                              "end": {
                                "line": 478,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19895,
                              "end": 19919,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 31
                                },
                                "end": {
                                  "line": 478,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19895,
                                "end": 19899,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19900,
                                "end": 19919,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGridPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 19920,
                                "end": 19928,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 19930,
                                "end": 19941,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 19943,
                                "end": 19955,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19966,
                      "end": 20051,
                      "loc": {
                        "start": {
                          "line": 479,
                          "column": 8
                        },
                        "end": {
                          "line": 479,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19970,
                          "end": 20050,
                          "loc": {
                            "start": {
                              "line": 479,
                              "column": 12
                            },
                            "end": {
                              "line": 479,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19970,
                            "end": 19986,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 12
                              },
                              "end": {
                                "line": 479,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19989,
                            "end": 20050,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 31
                              },
                              "end": {
                                "line": 479,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19989,
                              "end": 20013,
                              "loc": {
                                "start": {
                                  "line": 479,
                                  "column": 31
                                },
                                "end": {
                                  "line": 479,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19989,
                                "end": 19993,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19994,
                                "end": 20013,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGeomPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 20014,
                                "end": 20022,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 20024,
                                "end": 20035,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 20037,
                                "end": 20049,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 20061,
                      "end": 20364,
                      "loc": {
                        "start": {
                          "line": 481,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 20065,
                        "end": 20121,
                        "loc": {
                          "start": {
                            "line": 481,
                            "column": 12
                          },
                          "end": {
                            "line": 481,
                            "column": 68
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 20065,
                          "end": 20091,
                          "loc": {
                            "start": {
                              "line": 481,
                              "column": 12
                            },
                            "end": {
                              "line": 481,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20065,
                            "end": 20081,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 12
                              },
                              "end": {
                                "line": 481,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20082,
                            "end": 20091,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 29
                              },
                              "end": {
                                "line": 481,
                                "column": 38
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 20095,
                          "end": 20121,
                          "loc": {
                            "start": {
                              "line": 481,
                              "column": 42
                            },
                            "end": {
                              "line": 481,
                              "column": 68
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20095,
                            "end": 20111,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 42
                              },
                              "end": {
                                "line": 481,
                                "column": 58
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20112,
                            "end": 20121,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 59
                              },
                              "end": {
                                "line": 481,
                                "column": 68
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20135,
                        "end": 20264,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 12
                          },
                          "end": {
                            "line": 482,
                            "column": 141
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20142,
                          "end": 20263,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 19
                            },
                            "end": {
                              "line": 482,
                              "column": 140
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 20142,
                            "end": 20223,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 19
                              },
                              "end": {
                                "line": 482,
                                "column": 100
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 20142,
                              "end": 20181,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 19
                                },
                                "end": {
                                  "line": 482,
                                  "column": 58
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20142,
                                "end": 20179,
                                "loc": {
                                  "start": {
                                    "line": 482,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 482,
                                    "column": 56
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20142,
                                  "end": 20172,
                                  "loc": {
                                    "start": {
                                      "line": 482,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 482,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20142,
                                    "end": 20158,
                                    "loc": {
                                      "start": {
                                        "line": 482,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 482,
                                        "column": 35
                                      }
                                    },
                                    "name": "geomClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20159,
                                    "end": 20172,
                                    "loc": {
                                      "start": {
                                        "line": 482,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 482,
                                        "column": 49
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20173,
                                  "end": 20179,
                                  "loc": {
                                    "start": {
                                      "line": 482,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 482,
                                      "column": 56
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "operator": "<",
                            "right": {
                              "type": "CallExpression",
                              "start": 20184,
                              "end": 20223,
                              "loc": {
                                "start": {
                                  "line": 482,
                                  "column": 61
                                },
                                "end": {
                                  "line": 482,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20184,
                                "end": 20221,
                                "loc": {
                                  "start": {
                                    "line": 482,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 482,
                                    "column": 98
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20184,
                                  "end": 20214,
                                  "loc": {
                                    "start": {
                                      "line": 482,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 482,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20184,
                                    "end": 20200,
                                    "loc": {
                                      "start": {
                                        "line": 482,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 482,
                                        "column": 77
                                      }
                                    },
                                    "name": "gridClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20201,
                                    "end": 20214,
                                    "loc": {
                                      "start": {
                                        "line": 482,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 482,
                                        "column": 91
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20215,
                                  "end": 20221,
                                  "loc": {
                                    "start": {
                                      "line": 482,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 482,
                                      "column": 98
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20227,
                            "end": 20243,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 104
                              },
                              "end": {
                                "line": 482,
                                "column": 120
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20247,
                            "end": 20263,
                            "loc": {
                              "start": {
                                "line": 482,
                                "column": 124
                              },
                              "end": {
                                "line": 482,
                                "column": 140
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "start": 20290,
                        "end": 20364,
                        "loc": {
                          "start": {
                            "line": 484,
                            "column": 12
                          },
                          "end": {
                            "line": 484,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20297,
                          "end": 20363,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 19
                            },
                            "end": {
                              "line": 484,
                              "column": 85
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 20297,
                            "end": 20323,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 19
                              },
                              "end": {
                                "line": 484,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 20297,
                              "end": 20313,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 19
                                },
                                "end": {
                                  "line": 484,
                                  "column": 35
                                }
                              },
                              "name": "geomClosestPoint"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20314,
                              "end": 20323,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 36
                                },
                                "end": {
                                  "line": 484,
                                  "column": 45
                                }
                              },
                              "name": "isSnapped"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20327,
                            "end": 20343,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 49
                              },
                              "end": {
                                "line": 484,
                                "column": 65
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20347,
                            "end": 20363,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 69
                              },
                              "end": {
                                "line": 484,
                                "column": 85
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20376,
              "end": 23501,
              "loc": {
                "start": {
                  "line": 487,
                  "column": 4
                },
                "end": {
                  "line": 557,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20376,
                "end": 20395,
                "loc": {
                  "start": {
                    "line": 487,
                    "column": 4
                  },
                  "end": {
                    "line": 487,
                    "column": 23
                  }
                },
                "name": "getSnappedPointWrap"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20395,
                "end": 23501,
                "loc": {
                  "start": {
                    "line": 487,
                    "column": 23
                  },
                  "end": {
                    "line": 557,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20396,
                    "end": 20409,
                    "loc": {
                      "start": {
                        "line": 487,
                        "column": 24
                      },
                      "end": {
                        "line": 487,
                        "column": 37
                      }
                    },
                    "name": "mousePosition"
                  },
                  {
                    "type": "Identifier",
                    "start": 20411,
                    "end": 20414,
                    "loc": {
                      "start": {
                        "line": 487,
                        "column": 39
                      },
                      "end": {
                        "line": 487,
                        "column": 42
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 20416,
                    "end": 20429,
                    "loc": {
                      "start": {
                        "line": 487,
                        "column": 44
                      },
                      "end": {
                        "line": 487,
                        "column": 57
                      }
                    },
                    "name": "lastDragPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20431,
                  "end": 23501,
                  "loc": {
                    "start": {
                      "line": 487,
                      "column": 59
                    },
                    "end": {
                      "line": 557,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 20441,
                      "end": 20472,
                      "loc": {
                        "start": {
                          "line": 488,
                          "column": 8
                        },
                        "end": {
                          "line": 488,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 20445,
                        "end": 20449,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 12
                          },
                          "end": {
                            "line": 488,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 20446,
                          "end": 20449,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 13
                            },
                            "end": {
                              "line": 488,
                              "column": 16
                            }
                          },
                          "name": "obj"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20451,
                        "end": 20472,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 18
                          },
                          "end": {
                            "line": 488,
                            "column": 39
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 20458,
                          "end": 20471,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 25
                            },
                            "end": {
                              "line": 488,
                              "column": 38
                            }
                          },
                          "name": "mousePosition"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20482,
                      "end": 20511,
                      "loc": {
                        "start": {
                          "line": 490,
                          "column": 8
                        },
                        "end": {
                          "line": 490,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20486,
                          "end": 20510,
                          "loc": {
                            "start": {
                              "line": 490,
                              "column": 12
                            },
                            "end": {
                              "line": 490,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20486,
                            "end": 20494,
                            "loc": {
                              "start": {
                                "line": 490,
                                "column": 12
                              },
                              "end": {
                                "line": 490,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 20497,
                            "end": 20510,
                            "loc": {
                              "start": {
                                "line": 490,
                                "column": 23
                              },
                              "end": {
                                "line": 490,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20497,
                              "end": 20501,
                              "loc": {
                                "start": {
                                  "line": 490,
                                  "column": 23
                                },
                                "end": {
                                  "line": 490,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20502,
                              "end": 20510,
                              "loc": {
                                "start": {
                                  "line": 490,
                                  "column": 28
                                },
                                "end": {
                                  "line": 490,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20520,
                      "end": 20571,
                      "loc": {
                        "start": {
                          "line": 491,
                          "column": 8
                        },
                        "end": {
                          "line": 491,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20524,
                          "end": 20570,
                          "loc": {
                            "start": {
                              "line": 491,
                              "column": 12
                            },
                            "end": {
                              "line": 491,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20524,
                            "end": 20535,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 12
                              },
                              "end": {
                                "line": 491,
                                "column": 23
                              }
                            },
                            "name": "maxDistance"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 20538,
                            "end": 20570,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 26
                              },
                              "end": {
                                "line": 491,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 20538,
                              "end": 20564,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 26
                                },
                                "end": {
                                  "line": 491,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 20538,
                                "end": 20562,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20538,
                                  "end": 20556,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20538,
                                    "end": 20551,
                                    "loc": {
                                      "start": {
                                        "line": 491,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 491,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20538,
                                      "end": 20548,
                                      "loc": {
                                        "start": {
                                          "line": 491,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 491,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20538,
                                        "end": 20541,
                                        "loc": {
                                          "start": {
                                            "line": 491,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 491,
                                            "column": 29
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20542,
                                        "end": 20548,
                                        "loc": {
                                          "start": {
                                            "line": 491,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 491,
                                            "column": 36
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Literal",
                                      "start": 20549,
                                      "end": 20550,
                                      "loc": {
                                        "start": {
                                          "line": 491,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 491,
                                          "column": 38
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20552,
                                    "end": 20556,
                                    "loc": {
                                      "start": {
                                        "line": 491,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 491,
                                        "column": 44
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20557,
                                  "end": 20562,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 50
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20563,
                                "end": 20564,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 52
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 20567,
                              "end": 20570,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 55
                                },
                                "end": {
                                  "line": 491,
                                  "column": 58
                                }
                              },
                              "value": 1.5,
                              "rawValue": 1.5,
                              "raw": "1.5"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 20581,
                      "end": 22005,
                      "loc": {
                        "start": {
                          "line": 493,
                          "column": 8
                        },
                        "end": {
                          "line": 523,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 20590,
                        "end": 20605,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 17
                          },
                          "end": {
                            "line": 493,
                            "column": 32
                          }
                        },
                        "name": "snapToDirection"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [],
                      "body": {
                        "type": "BlockStatement",
                        "start": 20608,
                        "end": 22005,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 35
                          },
                          "end": {
                            "line": 523,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 20622,
                            "end": 20659,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 12
                              },
                              "end": {
                                "line": 494,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20626,
                                "end": 20658,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20626,
                                  "end": 20634,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 24
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20637,
                                  "end": 20658,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 48
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20637,
                                    "end": 20656,
                                    "loc": {
                                      "start": {
                                        "line": 494,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 494,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20637,
                                      "end": 20650,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 40
                                        }
                                      },
                                      "name": "mousePosition"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20651,
                                      "end": 20656,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 46
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20673,
                            "end": 20695,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 12
                              },
                              "end": {
                                "line": 496,
                                "column": 34
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20677,
                                "end": 20694,
                                "loc": {
                                  "start": {
                                    "line": 496,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 496,
                                    "column": 33
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20677,
                                  "end": 20681,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 20
                                    }
                                  },
                                  "name": "line"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20684,
                                  "end": 20694,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20684,
                                    "end": 20687,
                                    "loc": {
                                      "start": {
                                        "line": 496,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 496,
                                        "column": 26
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20688,
                                    "end": 20694,
                                    "loc": {
                                      "start": {
                                        "line": 496,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 496,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20708,
                            "end": 20749,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 497,
                                "column": 53
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20712,
                                "end": 20747,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 51
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20712,
                                  "end": 20715,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 19
                                    }
                                  },
                                  "name": "idx"
                                },
                                "init": {
                                  "type": "ConditionalExpression",
                                  "start": 20718,
                                  "end": 20747,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 20718,
                                    "end": 20739,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20718,
                                      "end": 20732,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 20718,
                                        "end": 20729,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 20718,
                                          "end": 20722,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 26
                                            }
                                          },
                                          "name": "line"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 20723,
                                          "end": 20729,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 33
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 20730,
                                        "end": 20731,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 35
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "operator": "==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20736,
                                      "end": 20739,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 43
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "Literal",
                                    "start": 20742,
                                    "end": 20743,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 47
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "alternate": {
                                    "type": "Literal",
                                    "start": 20746,
                                    "end": 20747,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 51
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20762,
                            "end": 20813,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 63
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20766,
                                "end": 20812,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 62
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20766,
                                  "end": 20780,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 30
                                    }
                                  },
                                  "name": "neighbourPoint"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20783,
                                  "end": 20812,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20783,
                                    "end": 20803,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20783,
                                      "end": 20794,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20783,
                                        "end": 20787,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 37
                                          }
                                        },
                                        "name": "line"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20788,
                                        "end": 20794,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 44
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "BinaryExpression",
                                      "start": 20795,
                                      "end": 20802,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 52
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 20795,
                                        "end": 20796,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 46
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "operator": "-",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 20799,
                                        "end": 20802,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 52
                                          }
                                        },
                                        "name": "idx"
                                      }
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20804,
                                    "end": 20812,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 62
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20827,
                            "end": 20859,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 12
                              },
                              "end": {
                                "line": 500,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20831,
                                "end": 20858,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20831,
                                  "end": 20836,
                                  "loc": {
                                    "start": {
                                      "line": 500,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 21
                                    }
                                  },
                                  "name": "delta"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 20839,
                                  "end": 20858,
                                  "loc": {
                                    "start": {
                                      "line": 500,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 43
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20843,
                                    "end": 20856,
                                    "loc": {
                                      "start": {
                                        "line": 500,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 500,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20843,
                                      "end": 20848,
                                      "loc": {
                                        "start": {
                                          "line": 500,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 500,
                                          "column": 33
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20849,
                                      "end": 20856,
                                      "loc": {
                                        "start": {
                                          "line": 500,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 500,
                                          "column": 41
                                        }
                                      },
                                      "name": "Vector3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20872,
                            "end": 20915,
                            "loc": {
                              "start": {
                                "line": 501,
                                "column": 12
                              },
                              "end": {
                                "line": 501,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 20872,
                              "end": 20914,
                              "loc": {
                                "start": {
                                  "line": 501,
                                  "column": 12
                                },
                                "end": {
                                  "line": 501,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20872,
                                "end": 20888,
                                "loc": {
                                  "start": {
                                    "line": 501,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 501,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20872,
                                  "end": 20877,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20878,
                                  "end": 20888,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 28
                                    }
                                  },
                                  "name": "subVectors"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 20889,
                                  "end": 20897,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 37
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 20899,
                                  "end": 20913,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 53
                                    }
                                  },
                                  "name": "neighbourPoint"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20928,
                            "end": 20942,
                            "loc": {
                              "start": {
                                "line": 502,
                                "column": 12
                              },
                              "end": {
                                "line": 502,
                                "column": 26
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20928,
                              "end": 20941,
                              "loc": {
                                "start": {
                                  "line": 502,
                                  "column": 12
                                },
                                "end": {
                                  "line": 502,
                                  "column": 25
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20928,
                                "end": 20935,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20928,
                                  "end": 20933,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20934,
                                  "end": 20935,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 19
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 20938,
                                "end": 20941,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20956,
                            "end": 20981,
                            "loc": {
                              "start": {
                                "line": 504,
                                "column": 12
                              },
                              "end": {
                                "line": 504,
                                "column": 37
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20960,
                                "end": 20980,
                                "loc": {
                                  "start": {
                                    "line": 504,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 504,
                                    "column": 36
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20960,
                                  "end": 20963,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 19
                                    }
                                  },
                                  "name": "len"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20966,
                                  "end": 20980,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 36
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20966,
                                    "end": 20978,
                                    "loc": {
                                      "start": {
                                        "line": 504,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 504,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20966,
                                      "end": 20971,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 27
                                        }
                                      },
                                      "name": "delta"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20972,
                                      "end": 20978,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 34
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 20994,
                            "end": 21965,
                            "loc": {
                              "start": {
                                "line": 505,
                                "column": 12
                              },
                              "end": {
                                "line": 520,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 20998,
                              "end": 21009,
                              "loc": {
                                "start": {
                                  "line": 505,
                                  "column": 16
                                },
                                "end": {
                                  "line": 505,
                                  "column": 27
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 20998,
                                "end": 21001,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 19
                                  }
                                },
                                "name": "len"
                              },
                              "operator": ">",
                              "right": {
                                "type": "Literal",
                                "start": 21004,
                                "end": 21009,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 27
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "0.001"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 21011,
                              "end": 21965,
                              "loc": {
                                "start": {
                                  "line": 505,
                                  "column": 29
                                },
                                "end": {
                                  "line": 520,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21029,
                                  "end": 21071,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 58
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21033,
                                      "end": 21070,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 57
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21033,
                                        "end": 21035,
                                        "loc": {
                                          "start": {
                                            "line": 506,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 506,
                                            "column": 22
                                          }
                                        },
                                        "name": "oX"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21038,
                                        "end": 21070,
                                        "loc": {
                                          "start": {
                                            "line": 506,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 506,
                                            "column": 57
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21042,
                                          "end": 21055,
                                          "loc": {
                                            "start": {
                                              "line": 506,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 506,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21042,
                                            "end": 21047,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 34
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21048,
                                            "end": 21055,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 42
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "start": 21056,
                                            "end": 21059,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 46
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21061,
                                            "end": 21064,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 51
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21066,
                                            "end": 21069,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 56
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21088,
                                  "end": 21127,
                                  "loc": {
                                    "start": {
                                      "line": 507,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 507,
                                      "column": 55
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21092,
                                      "end": 21126,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 54
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21092,
                                        "end": 21106,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 34
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21109,
                                        "end": 21126,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 54
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21109,
                                          "end": 21122,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21109,
                                            "end": 21114,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 42
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21115,
                                            "end": 21122,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 50
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21123,
                                            "end": 21125,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 53
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21144,
                                  "end": 21231,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 103
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21144,
                                    "end": 21230,
                                    "loc": {
                                      "start": {
                                        "line": 508,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 508,
                                        "column": 102
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21144,
                                      "end": 21158,
                                      "loc": {
                                        "start": {
                                          "line": 508,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 508,
                                          "column": 30
                                        }
                                      },
                                      "name": "angleDeltaToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21161,
                                      "end": 21230,
                                      "loc": {
                                        "start": {
                                          "line": 508,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 508,
                                          "column": 102
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21162,
                                        "end": 21177,
                                        "loc": {
                                          "start": {
                                            "line": 508,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 508,
                                            "column": 49
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21162,
                                          "end": 21169,
                                          "loc": {
                                            "start": {
                                              "line": 508,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 508,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21162,
                                            "end": 21167,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 39
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21168,
                                            "end": 21169,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21172,
                                          "end": 21177,
                                          "loc": {
                                            "start": {
                                              "line": 508,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 508,
                                              "column": 49
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21173,
                                            "end": 21177,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 49
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21182,
                                        "end": 21212,
                                        "loc": {
                                          "start": {
                                            "line": 508,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 508,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21183,
                                          "end": 21194,
                                          "loc": {
                                            "start": {
                                              "line": 508,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 508,
                                              "column": 66
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21183,
                                            "end": 21184,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 56
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21187,
                                            "end": 21194,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 66
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21187,
                                              "end": 21191,
                                              "loc": {
                                                "start": {
                                                  "line": 508,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 508,
                                                  "column": 63
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21192,
                                              "end": 21194,
                                              "loc": {
                                                "start": {
                                                  "line": 508,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 508,
                                                  "column": 66
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21198,
                                          "end": 21212,
                                          "loc": {
                                            "start": {
                                              "line": 508,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 508,
                                              "column": 84
                                            }
                                          },
                                          "name": "angleDeltaToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21216,
                                        "end": 21230,
                                        "loc": {
                                          "start": {
                                            "line": 508,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 508,
                                            "column": 102
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21248,
                                  "end": 21262,
                                  "loc": {
                                    "start": {
                                      "line": 509,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 509,
                                      "column": 30
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21252,
                                      "end": 21261,
                                      "loc": {
                                        "start": {
                                          "line": 509,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 509,
                                          "column": 29
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21252,
                                        "end": 21256,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 24
                                          }
                                        },
                                        "name": "axis"
                                      },
                                      "init": {
                                        "type": "Identifier",
                                        "start": 21259,
                                        "end": 21261,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 29
                                          }
                                        },
                                        "name": "oX"
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21279,
                                  "end": 21316,
                                  "loc": {
                                    "start": {
                                      "line": 510,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 510,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21283,
                                      "end": 21315,
                                      "loc": {
                                        "start": {
                                          "line": 510,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 510,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21283,
                                        "end": 21296,
                                        "loc": {
                                          "start": {
                                            "line": 510,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 510,
                                            "column": 33
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21299,
                                        "end": 21315,
                                        "loc": {
                                          "start": {
                                            "line": 510,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 510,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21299,
                                          "end": 21311,
                                          "loc": {
                                            "start": {
                                              "line": 510,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 510,
                                              "column": 48
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21299,
                                            "end": 21303,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 40
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21304,
                                            "end": 21311,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 48
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21312,
                                            "end": 21314,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 51
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21333,
                                  "end": 21416,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 99
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21333,
                                    "end": 21415,
                                    "loc": {
                                      "start": {
                                        "line": 511,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 511,
                                        "column": 98
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21333,
                                      "end": 21346,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 29
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21349,
                                      "end": 21415,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 98
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21350,
                                        "end": 21364,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21350,
                                          "end": 21356,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21350,
                                            "end": 21354,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 37
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21355,
                                            "end": 21356,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 39
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21359,
                                          "end": 21364,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 47
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21360,
                                            "end": 21364,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 47
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21369,
                                        "end": 21398,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 81
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21370,
                                          "end": 21381,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 64
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21370,
                                            "end": 21371,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 54
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21374,
                                            "end": 21381,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 64
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21374,
                                              "end": 21378,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 61
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21379,
                                              "end": 21381,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 64
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21385,
                                          "end": 21398,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 81
                                            }
                                          },
                                          "name": "angleAxisToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21402,
                                        "end": 21415,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 98
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21434,
                                  "end": 21564,
                                  "loc": {
                                    "start": {
                                      "line": 513,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 513,
                                      "column": 146
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21438,
                                      "end": 21563,
                                      "loc": {
                                        "start": {
                                          "line": 513,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 513,
                                          "column": 145
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21438,
                                        "end": 21442,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 24
                                          }
                                        },
                                        "name": "diff"
                                      },
                                      "init": {
                                        "type": "ConditionalExpression",
                                        "start": 21445,
                                        "end": 21563,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 145
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 21446,
                                          "end": 21476,
                                          "loc": {
                                            "start": {
                                              "line": 513,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 513,
                                              "column": 58
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21446,
                                            "end": 21460,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 42
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21463,
                                            "end": 21476,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 58
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "consequent": {
                                          "type": "BinaryExpression",
                                          "start": 21481,
                                          "end": 21511,
                                          "loc": {
                                            "start": {
                                              "line": 513,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 513,
                                              "column": 93
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21481,
                                            "end": 21495,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 77
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21498,
                                            "end": 21511,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 93
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "alternate": {
                                          "type": "BinaryExpression",
                                          "start": 21516,
                                          "end": 21562,
                                          "loc": {
                                            "start": {
                                              "line": 513,
                                              "column": 98
                                            },
                                            "end": {
                                              "line": 513,
                                              "column": 144
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21516,
                                            "end": 21546,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 128
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21517,
                                              "end": 21528,
                                              "loc": {
                                                "start": {
                                                  "line": 513,
                                                  "column": 99
                                                },
                                                "end": {
                                                  "line": 513,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21517,
                                                "end": 21518,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 99
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 100
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21521,
                                                "end": 21528,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 103
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 110
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21521,
                                                  "end": 21525,
                                                  "loc": {
                                                    "start": {
                                                      "line": 513,
                                                      "column": 103
                                                    },
                                                    "end": {
                                                      "line": 513,
                                                      "column": 107
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21526,
                                                  "end": 21528,
                                                  "loc": {
                                                    "start": {
                                                      "line": 513,
                                                      "column": 108
                                                    },
                                                    "end": {
                                                      "line": 513,
                                                      "column": 110
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "+",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21532,
                                              "end": 21546,
                                              "loc": {
                                                "start": {
                                                  "line": 513,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 513,
                                                  "column": 128
                                                }
                                              },
                                              "name": "angleDeltaToOX"
                                            }
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21549,
                                            "end": 21562,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 131
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 144
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21581,
                                  "end": 21646,
                                  "loc": {
                                    "start": {
                                      "line": 514,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 514,
                                      "column": 81
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21585,
                                      "end": 21645,
                                      "loc": {
                                        "start": {
                                          "line": 514,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 514,
                                          "column": 80
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21585,
                                        "end": 21590,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 25
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21593,
                                        "end": 21645,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21593,
                                          "end": 21603,
                                          "loc": {
                                            "start": {
                                              "line": 514,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 514,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21593,
                                            "end": 21597,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 32
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21598,
                                            "end": 21603,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 38
                                              }
                                            },
                                            "name": "round"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "BinaryExpression",
                                            "start": 21604,
                                            "end": 21644,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 79
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21604,
                                              "end": 21628,
                                              "loc": {
                                                "start": {
                                                  "line": 514,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 514,
                                                  "column": 63
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 21604,
                                                "end": 21608,
                                                "loc": {
                                                  "start": {
                                                    "line": 514,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 514,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "diff"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "Identifier",
                                                "start": 21611,
                                                "end": 21628,
                                                "loc": {
                                                  "start": {
                                                    "line": 514,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 514,
                                                    "column": 63
                                                  }
                                                },
                                                "name": "nbShiftDirections"
                                              }
                                            },
                                            "operator": "/",
                                            "right": {
                                              "type": "BinaryExpression",
                                              "start": 21632,
                                              "end": 21643,
                                              "loc": {
                                                "start": {
                                                  "line": 514,
                                                  "column": 67
                                                },
                                                "end": {
                                                  "line": 514,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21632,
                                                "end": 21633,
                                                "loc": {
                                                  "start": {
                                                    "line": 514,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 514,
                                                    "column": 68
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21636,
                                                "end": 21643,
                                                "loc": {
                                                  "start": {
                                                    "line": 514,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 514,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21636,
                                                  "end": 21640,
                                                  "loc": {
                                                    "start": {
                                                      "line": 514,
                                                      "column": 71
                                                    },
                                                    "end": {
                                                      "line": 514,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21641,
                                                  "end": 21643,
                                                  "loc": {
                                                    "start": {
                                                      "line": 514,
                                                      "column": 76
                                                    },
                                                    "end": {
                                                      "line": 514,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21663,
                                  "end": 21717,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 70
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21667,
                                      "end": 21716,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 69
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21667,
                                        "end": 21672,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 21675,
                                        "end": 21716,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 69
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21675,
                                          "end": 21696,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21676,
                                            "end": 21687,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 40
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 21676,
                                              "end": 21677,
                                              "loc": {
                                                "start": {
                                                  "line": 515,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 515,
                                                  "column": 30
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 21680,
                                              "end": 21687,
                                              "loc": {
                                                "start": {
                                                  "line": 515,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 515,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21680,
                                                "end": 21684,
                                                "loc": {
                                                  "start": {
                                                    "line": 515,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 515,
                                                    "column": 37
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21685,
                                                "end": 21687,
                                                "loc": {
                                                  "start": {
                                                    "line": 515,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 515,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "PI"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21691,
                                            "end": 21696,
                                            "loc": {
                                              "start": {
                                                "line": 515,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 515,
                                                "column": 49
                                              }
                                            },
                                            "name": "round"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21699,
                                          "end": 21716,
                                          "loc": {
                                            "start": {
                                              "line": 515,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 515,
                                              "column": 69
                                            }
                                          },
                                          "name": "nbShiftDirections"
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21734,
                                  "end": 21757,
                                  "loc": {
                                    "start": {
                                      "line": 516,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 516,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21734,
                                    "end": 21756,
                                    "loc": {
                                      "start": {
                                        "line": 516,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 516,
                                        "column": 38
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21734,
                                      "end": 21739,
                                      "loc": {
                                        "start": {
                                          "line": 516,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 516,
                                          "column": 21
                                        }
                                      },
                                      "name": "angle"
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 21743,
                                      "end": 21756,
                                      "loc": {
                                        "start": {
                                          "line": 516,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 516,
                                          "column": 38
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21774,
                                  "end": 21841,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 83
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21778,
                                      "end": 21840,
                                      "loc": {
                                        "start": {
                                          "line": 517,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 517,
                                          "column": 82
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21778,
                                        "end": 21781,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 23
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21784,
                                        "end": 21840,
                                        "loc": {
                                          "start": {
                                            "line": 517,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 517,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21788,
                                          "end": 21801,
                                          "loc": {
                                            "start": {
                                              "line": 517,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 517,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21788,
                                            "end": 21793,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 35
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21794,
                                            "end": 21801,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 43
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 21802,
                                            "end": 21817,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21802,
                                              "end": 21810,
                                              "loc": {
                                                "start": {
                                                  "line": 517,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 517,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21802,
                                                "end": 21806,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21807,
                                                "end": 21810,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "cos"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21811,
                                                "end": 21816,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 21819,
                                            "end": 21834,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21819,
                                              "end": 21827,
                                              "loc": {
                                                "start": {
                                                  "line": 517,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 517,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21819,
                                                "end": 21823,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 65
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21824,
                                                "end": 21827,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 66
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "sin"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21828,
                                                "end": 21833,
                                                "loc": {
                                                  "start": {
                                                    "line": 517,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 517,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21836,
                                            "end": 21839,
                                            "loc": {
                                              "start": {
                                                "line": 517,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 517,
                                                "column": 81
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21858,
                                  "end": 21893,
                                  "loc": {
                                    "start": {
                                      "line": 518,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 518,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21858,
                                    "end": 21892,
                                    "loc": {
                                      "start": {
                                        "line": 518,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 518,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21858,
                                      "end": 21876,
                                      "loc": {
                                        "start": {
                                          "line": 518,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 518,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21858,
                                        "end": 21861,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 19
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21862,
                                        "end": 21876,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 34
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 21877,
                                        "end": 21891,
                                        "loc": {
                                          "start": {
                                            "line": 518,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 518,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21877,
                                          "end": 21884,
                                          "loc": {
                                            "start": {
                                              "line": 518,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 518,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21877,
                                            "end": 21880,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 38
                                              }
                                            },
                                            "name": "dir"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21881,
                                            "end": 21884,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 42
                                              }
                                            },
                                            "name": "dot"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21885,
                                            "end": 21890,
                                            "loc": {
                                              "start": {
                                                "line": 518,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 518,
                                                "column": 48
                                              }
                                            },
                                            "name": "delta"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21910,
                                  "end": 21951,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21910,
                                    "end": 21950,
                                    "loc": {
                                      "start": {
                                        "line": 519,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 519,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21910,
                                      "end": 21929,
                                      "loc": {
                                        "start": {
                                          "line": 519,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 519,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21910,
                                        "end": 21918,
                                        "loc": {
                                          "start": {
                                            "line": 519,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 519,
                                            "column": 24
                                          }
                                        },
                                        "name": "toReturn"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21919,
                                        "end": 21929,
                                        "loc": {
                                          "start": {
                                            "line": 519,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 519,
                                            "column": 35
                                          }
                                        },
                                        "name": "addVectors"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 21930,
                                        "end": 21944,
                                        "loc": {
                                          "start": {
                                            "line": 519,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 519,
                                            "column": 50
                                          }
                                        },
                                        "name": "neighbourPoint"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 21946,
                                        "end": 21949,
                                        "loc": {
                                          "start": {
                                            "line": 519,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 519,
                                            "column": 55
                                          }
                                        },
                                        "name": "dir"
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 21979,
                            "end": 21995,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 12
                              },
                              "end": {
                                "line": 522,
                                "column": 28
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 21986,
                              "end": 21994,
                              "loc": {
                                "start": {
                                  "line": 522,
                                  "column": 19
                                },
                                "end": {
                                  "line": 522,
                                  "column": 27
                                }
                              },
                              "name": "toReturn"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22015,
                      "end": 22129,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 8
                        },
                        "end": {
                          "line": 525,
                          "column": 122
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22019,
                          "end": 22128,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 12
                            },
                            "end": {
                              "line": 525,
                              "column": 121
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22019,
                            "end": 22036,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 12
                              },
                              "end": {
                                "line": 525,
                                "column": 29
                              }
                            },
                            "name": "nbShiftDirections"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 22039,
                            "end": 22128,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 32
                              },
                              "end": {
                                "line": 525,
                                "column": 121
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 22039,
                              "end": 22073,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 32
                                },
                                "end": {
                                  "line": 525,
                                  "column": 66
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22039,
                                "end": 22064,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22039,
                                  "end": 22052,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 22039,
                                    "end": 22047,
                                    "loc": {
                                      "start": {
                                        "line": 525,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 525,
                                        "column": 40
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22048,
                                    "end": 22052,
                                    "loc": {
                                      "start": {
                                        "line": 525,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 525,
                                        "column": 45
                                      }
                                    },
                                    "name": "view"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22053,
                                  "end": 22064,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 57
                                    }
                                  },
                                  "name": "interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22065,
                                "end": 22073,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 66
                                  }
                                },
                                "name": "shiftKey"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "MemberExpression",
                              "start": 22076,
                              "end": 22124,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 69
                                },
                                "end": {
                                  "line": 525,
                                  "column": 117
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22076,
                                "end": 22108,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 101
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22076,
                                  "end": 22084,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 77
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22085,
                                  "end": 22108,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 101
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22109,
                                "end": 22124,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 117
                                  }
                                },
                                "name": "shiftDirections"
                              },
                              "computed": false
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 22127,
                              "end": 22128,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 120
                                },
                                "end": {
                                  "line": 525,
                                  "column": 121
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22138,
                      "end": 22216,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 8
                        },
                        "end": {
                          "line": 526,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 22142,
                        "end": 22189,
                        "loc": {
                          "start": {
                            "line": 526,
                            "column": 12
                          },
                          "end": {
                            "line": 526,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22142,
                          "end": 22159,
                          "loc": {
                            "start": {
                              "line": 526,
                              "column": 12
                            },
                            "end": {
                              "line": 526,
                              "column": 29
                            }
                          },
                          "name": "nbShiftDirections"
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 22163,
                          "end": 22189,
                          "loc": {
                            "start": {
                              "line": 526,
                              "column": 33
                            },
                            "end": {
                              "line": 526,
                              "column": 59
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 22163,
                            "end": 22173,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 33
                              },
                              "end": {
                                "line": 526,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22163,
                              "end": 22166,
                              "loc": {
                                "start": {
                                  "line": 526,
                                  "column": 33
                                },
                                "end": {
                                  "line": 526,
                                  "column": 36
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22167,
                              "end": 22173,
                              "loc": {
                                "start": {
                                  "line": 526,
                                  "column": 37
                                },
                                "end": {
                                  "line": 526,
                                  "column": 43
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 22185,
                            "end": 22189,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 55
                              },
                              "end": {
                                "line": 526,
                                "column": 59
                              }
                            },
                            "name": "Line"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 22191,
                        "end": 22216,
                        "loc": {
                          "start": {
                            "line": 526,
                            "column": 61
                          },
                          "end": {
                            "line": 526,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 22198,
                          "end": 22215,
                          "loc": {
                            "start": {
                              "line": 526,
                              "column": 68
                            },
                            "end": {
                              "line": 526,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 22198,
                            "end": 22213,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 68
                              },
                              "end": {
                                "line": 526,
                                "column": 83
                              }
                            },
                            "name": "snapToDirection"
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22226,
                      "end": 22263,
                      "loc": {
                        "start": {
                          "line": 528,
                          "column": 8
                        },
                        "end": {
                          "line": 528,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22230,
                          "end": 22262,
                          "loc": {
                            "start": {
                              "line": 528,
                              "column": 12
                            },
                            "end": {
                              "line": 528,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22230,
                            "end": 22238,
                            "loc": {
                              "start": {
                                "line": 528,
                                "column": 12
                              },
                              "end": {
                                "line": 528,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 22241,
                            "end": 22262,
                            "loc": {
                              "start": {
                                "line": 528,
                                "column": 23
                              },
                              "end": {
                                "line": 528,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22241,
                              "end": 22260,
                              "loc": {
                                "start": {
                                  "line": 528,
                                  "column": 23
                                },
                                "end": {
                                  "line": 528,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22241,
                                "end": 22254,
                                "loc": {
                                  "start": {
                                    "line": 528,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 528,
                                    "column": 36
                                  }
                                },
                                "name": "mousePosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22255,
                                "end": 22260,
                                "loc": {
                                  "start": {
                                    "line": 528,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 528,
                                    "column": 42
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22273,
                      "end": 22295,
                      "loc": {
                        "start": {
                          "line": 530,
                          "column": 8
                        },
                        "end": {
                          "line": 530,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22277,
                          "end": 22294,
                          "loc": {
                            "start": {
                              "line": 530,
                              "column": 12
                            },
                            "end": {
                              "line": 530,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22277,
                            "end": 22289,
                            "loc": {
                              "start": {
                                "line": 530,
                                "column": 12
                              },
                              "end": {
                                "line": 530,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 22292,
                            "end": 22294,
                            "loc": {
                              "start": {
                                "line": 530,
                                "column": 27
                              },
                              "end": {
                                "line": 530,
                                "column": 29
                              }
                            },
                            "elements": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22304,
                      "end": 22525,
                      "loc": {
                        "start": {
                          "line": 531,
                          "column": 8
                        },
                        "end": {
                          "line": 535,
                          "column": 115
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 22308,
                        "end": 22329,
                        "loc": {
                          "start": {
                            "line": 531,
                            "column": 12
                          },
                          "end": {
                            "line": 531,
                            "column": 33
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22308,
                          "end": 22311,
                          "loc": {
                            "start": {
                              "line": 531,
                              "column": 12
                            },
                            "end": {
                              "line": 531,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 22324,
                          "end": 22329,
                          "loc": {
                            "start": {
                              "line": 531,
                              "column": 28
                            },
                            "end": {
                              "line": 531,
                              "column": 33
                            }
                          },
                          "name": "Point"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22343,
                        "end": 22364,
                        "loc": {
                          "start": {
                            "line": 532,
                            "column": 12
                          },
                          "end": {
                            "line": 532,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 22343,
                          "end": 22363,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 12
                            },
                            "end": {
                              "line": 532,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 22343,
                            "end": 22355,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 12
                              },
                              "end": {
                                "line": 532,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "right": {
                            "type": "ArrayExpression",
                            "start": 22358,
                            "end": 22363,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 27
                              },
                              "end": {
                                "line": 532,
                                "column": 32
                              }
                            },
                            "elements": [
                              {
                                "type": "Identifier",
                                "start": 22359,
                                "end": 22362,
                                "loc": {
                                  "start": {
                                    "line": 532,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 532,
                                    "column": 31
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 22422,
                        "end": 22525,
                        "loc": {
                          "start": {
                            "line": 535,
                            "column": 12
                          },
                          "end": {
                            "line": 535,
                            "column": 115
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22422,
                          "end": 22524,
                          "loc": {
                            "start": {
                              "line": 535,
                              "column": 12
                            },
                            "end": {
                              "line": 535,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22422,
                            "end": 22451,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 12
                              },
                              "end": {
                                "line": 535,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22422,
                              "end": 22428,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 12
                                },
                                "end": {
                                  "line": 535,
                                  "column": 18
                                }
                              },
                              "name": "Sketch",
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22429,
                              "end": 22451,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 19
                                },
                                "end": {
                                  "line": 535,
                                  "column": 41
                                }
                              },
                              "name": "ForObjectsWithChildren"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 22452,
                              "end": 22455,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 42
                                },
                                "end": {
                                  "line": 535,
                                  "column": 45
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "FunctionExpression",
                              "start": 22457,
                              "end": 22523,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 47
                                },
                                "end": {
                                  "line": 535,
                                  "column": 113
                                }
                              },
                              "id": null,
                              "generator": false,
                              "expression": false,
                              "async": false,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "start": 22467,
                                  "end": 22470,
                                  "loc": {
                                    "start": {
                                      "line": 535,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 535,
                                      "column": 60
                                    }
                                  },
                                  "name": "arg"
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "start": 22472,
                                "end": 22523,
                                "loc": {
                                  "start": {
                                    "line": 535,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 535,
                                    "column": 113
                                  }
                                },
                                "body": [
                                  {
                                    "type": "IfStatement",
                                    "start": 22474,
                                    "end": 22522,
                                    "loc": {
                                      "start": {
                                        "line": 535,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 535,
                                        "column": 112
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 22477,
                                      "end": 22497,
                                      "loc": {
                                        "start": {
                                          "line": 535,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 535,
                                          "column": 87
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22477,
                                        "end": 22480,
                                        "loc": {
                                          "start": {
                                            "line": 535,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 535,
                                            "column": 70
                                          }
                                        },
                                        "name": "arg"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 22492,
                                        "end": 22497,
                                        "loc": {
                                          "start": {
                                            "line": 535,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 535,
                                            "column": 87
                                          }
                                        },
                                        "name": "Point"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 22499,
                                      "end": 22522,
                                      "loc": {
                                        "start": {
                                          "line": 535,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 535,
                                          "column": 112
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 22499,
                                        "end": 22521,
                                        "loc": {
                                          "start": {
                                            "line": 535,
                                            "column": 89
                                          },
                                          "end": {
                                            "line": 535,
                                            "column": 111
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22499,
                                          "end": 22516,
                                          "loc": {
                                            "start": {
                                              "line": 535,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 535,
                                              "column": 106
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22499,
                                            "end": 22511,
                                            "loc": {
                                              "start": {
                                                "line": 535,
                                                "column": 89
                                              },
                                              "end": {
                                                "line": 535,
                                                "column": 101
                                              }
                                            },
                                            "name": "pointsToSnap"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22512,
                                            "end": 22516,
                                            "loc": {
                                              "start": {
                                                "line": 535,
                                                "column": 102
                                              },
                                              "end": {
                                                "line": 535,
                                                "column": 106
                                              }
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22517,
                                            "end": 22520,
                                            "loc": {
                                              "start": {
                                                "line": 535,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 535,
                                                "column": 110
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ]
                                      }
                                    },
                                    "alternate": null
                                  }
                                ]
                              }
                            }
                          ],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "/return toReturn;",
                            "start": 22390,
                            "end": 22409,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 12
                              },
                              "end": {
                                "line": 534,
                                "column": 31
                              }
                            },
                            "range": [
                              22390,
                              22409
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22535,
                      "end": 22591,
                      "loc": {
                        "start": {
                          "line": 537,
                          "column": 8
                        },
                        "end": {
                          "line": 537,
                          "column": 64
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22539,
                          "end": 22590,
                          "loc": {
                            "start": {
                              "line": 537,
                              "column": 12
                            },
                            "end": {
                              "line": 537,
                              "column": 63
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22539,
                            "end": 22563,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 12
                              },
                              "end": {
                                "line": 537,
                                "column": 36
                              }
                            },
                            "name": "fromMousePositionToPoint"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 22566,
                            "end": 22590,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 39
                              },
                              "end": {
                                "line": 537,
                                "column": 63
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22570,
                              "end": 22583,
                              "loc": {
                                "start": {
                                  "line": 537,
                                  "column": 43
                                },
                                "end": {
                                  "line": 537,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22570,
                                "end": 22575,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 48
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22576,
                                "end": 22583,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 56
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 22584,
                                "end": 22585,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 58
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22586,
                                "end": 22587,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 60
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22588,
                                "end": 22589,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 62
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22601,
                      "end": 22628,
                      "loc": {
                        "start": {
                          "line": 539,
                          "column": 8
                        },
                        "end": {
                          "line": 539,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22605,
                          "end": 22627,
                          "loc": {
                            "start": {
                              "line": 539,
                              "column": 12
                            },
                            "end": {
                              "line": 539,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22605,
                            "end": 22613,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 12
                              },
                              "end": {
                                "line": 539,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 22616,
                            "end": 22627,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 23
                              },
                              "end": {
                                "line": 539,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22637,
                      "end": 22653,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 8
                        },
                        "end": {
                          "line": 540,
                          "column": 24
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22641,
                          "end": 22652,
                          "loc": {
                            "start": {
                              "line": 540,
                              "column": 12
                            },
                            "end": {
                              "line": 540,
                              "column": 23
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22641,
                            "end": 22645,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 12
                              },
                              "end": {
                                "line": 540,
                                "column": 16
                              }
                            },
                            "name": "self"
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 22648,
                            "end": 22652,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 19
                              },
                              "end": {
                                "line": 540,
                                "column": 23
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 22662,
                      "end": 23469,
                      "loc": {
                        "start": {
                          "line": 541,
                          "column": 8
                        },
                        "end": {
                          "line": 554,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22662,
                        "end": 23468,
                        "loc": {
                          "start": {
                            "line": 541,
                            "column": 8
                          },
                          "end": {
                            "line": 554,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22662,
                          "end": 22682,
                          "loc": {
                            "start": {
                              "line": 541,
                              "column": 8
                            },
                            "end": {
                              "line": 541,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22662,
                            "end": 22674,
                            "loc": {
                              "start": {
                                "line": 541,
                                "column": 8
                              },
                              "end": {
                                "line": 541,
                                "column": 20
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22675,
                            "end": 22682,
                            "loc": {
                              "start": {
                                "line": 541,
                                "column": 21
                              },
                              "end": {
                                "line": 541,
                                "column": 28
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 22683,
                            "end": 23467,
                            "loc": {
                              "start": {
                                "line": 541,
                                "column": 29
                              },
                              "end": {
                                "line": 554,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 22692,
                                "end": 22701,
                                "loc": {
                                  "start": {
                                    "line": 541,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 541,
                                    "column": 47
                                  }
                                },
                                "name": "geomPoint"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 22703,
                              "end": 23467,
                              "loc": {
                                "start": {
                                  "line": 541,
                                  "column": 49
                                },
                                "end": {
                                  "line": 554,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 22717,
                                  "end": 22823,
                                  "loc": {
                                    "start": {
                                      "line": 542,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 542,
                                      "column": 118
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22721,
                                    "end": 22748,
                                    "loc": {
                                      "start": {
                                        "line": 542,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 542,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22721,
                                      "end": 22734,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 29
                                        }
                                      },
                                      "name": "lastDragPoint"
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 22739,
                                      "end": 22748,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 43
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22750,
                                    "end": 22823,
                                    "loc": {
                                      "start": {
                                        "line": 542,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 542,
                                        "column": 118
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 22750,
                                      "end": 22822,
                                      "loc": {
                                        "start": {
                                          "line": 542,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 542,
                                          "column": 117
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22750,
                                        "end": 22774,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 69
                                          }
                                        },
                                        "name": "fromMousePositionToPoint"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 22777,
                                        "end": 22822,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 117
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22777,
                                          "end": 22807,
                                          "loc": {
                                            "start": {
                                              "line": 542,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 542,
                                              "column": 102
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 22777,
                                            "end": 22803,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 98
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22777,
                                              "end": 22801,
                                              "loc": {
                                                "start": {
                                                  "line": 542,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 542,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 22777,
                                                "end": 22795,
                                                "loc": {
                                                  "start": {
                                                    "line": 542,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 542,
                                                    "column": 90
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 22777,
                                                  "end": 22786,
                                                  "loc": {
                                                    "start": {
                                                      "line": 542,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 542,
                                                      "column": 81
                                                    }
                                                  },
                                                  "name": "geomPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22787,
                                                  "end": 22795,
                                                  "loc": {
                                                    "start": {
                                                      "line": 542,
                                                      "column": 82
                                                    },
                                                    "end": {
                                                      "line": 542,
                                                      "column": 90
                                                    }
                                                  },
                                                  "name": "position"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22796,
                                                "end": 22801,
                                                "loc": {
                                                  "start": {
                                                    "line": 542,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 542,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22804,
                                            "end": 22807,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 99
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 102
                                              }
                                            },
                                            "name": "sub"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22808,
                                            "end": 22821,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 103
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 116
                                              }
                                            },
                                            "name": "lastDragPoint"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22836,
                                  "end": 22877,
                                  "loc": {
                                    "start": {
                                      "line": 543,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 543,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22840,
                                      "end": 22876,
                                      "loc": {
                                        "start": {
                                          "line": 543,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 543,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22840,
                                        "end": 22852,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 28
                                          }
                                        },
                                        "name": "snapPosition"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22855,
                                        "end": 22876,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22855,
                                          "end": 22874,
                                          "loc": {
                                            "start": {
                                              "line": 543,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 543,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22855,
                                            "end": 22868,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 44
                                              }
                                            },
                                            "name": "mousePosition"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22869,
                                            "end": 22874,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 50
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 22890,
                                  "end": 22960,
                                  "loc": {
                                    "start": {
                                      "line": 544,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 544,
                                      "column": 82
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22894,
                                    "end": 22915,
                                    "loc": {
                                      "start": {
                                        "line": 544,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 544,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 22894,
                                      "end": 22902,
                                      "loc": {
                                        "start": {
                                          "line": 544,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 544,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22894,
                                        "end": 22897,
                                        "loc": {
                                          "start": {
                                            "line": 544,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 544,
                                            "column": 19
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22898,
                                        "end": 22902,
                                        "loc": {
                                          "start": {
                                            "line": 544,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 544,
                                            "column": 24
                                          }
                                        },
                                        "name": "name"
                                      },
                                      "computed": false
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Literal",
                                      "start": 22907,
                                      "end": 22915,
                                      "loc": {
                                        "start": {
                                          "line": 544,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 544,
                                          "column": 37
                                        }
                                      },
                                      "value": "center",
                                      "rawValue": "center",
                                      "raw": "'center'"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22917,
                                    "end": 22960,
                                    "loc": {
                                      "start": {
                                        "line": 544,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 544,
                                        "column": 82
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 22917,
                                      "end": 22959,
                                      "loc": {
                                        "start": {
                                          "line": 544,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 544,
                                          "column": 81
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 22917,
                                        "end": 22933,
                                        "loc": {
                                          "start": {
                                            "line": 544,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 544,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 22917,
                                          "end": 22929,
                                          "loc": {
                                            "start": {
                                              "line": 544,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 544,
                                              "column": 51
                                            }
                                          },
                                          "name": "snapPosition"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 22930,
                                          "end": 22933,
                                          "loc": {
                                            "start": {
                                              "line": 544,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 544,
                                              "column": 55
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 22934,
                                          "end": 22958,
                                          "loc": {
                                            "start": {
                                              "line": 544,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 544,
                                              "column": 80
                                            }
                                          },
                                          "name": "fromMousePositionToPoint"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22973,
                                  "end": 23143,
                                  "loc": {
                                    "start": {
                                      "line": 545,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 547,
                                      "column": 14
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22977,
                                      "end": 23142,
                                      "loc": {
                                        "start": {
                                          "line": 545,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 547,
                                          "column": 13
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22977,
                                        "end": 22989,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22992,
                                        "end": 23142,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 13
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22992,
                                          "end": 23016,
                                          "loc": {
                                            "start": {
                                              "line": 545,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 545,
                                              "column": 55
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22992,
                                            "end": 22996,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 35
                                              }
                                            },
                                            "name": "self"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22997,
                                            "end": 23016,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 55
                                              }
                                            },
                                            "name": "getClosestSnapPoint"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23034,
                                            "end": 23046,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 28
                                              }
                                            },
                                            "name": "snapPosition"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 23048,
                                            "end": 23059,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 41
                                              }
                                            },
                                            "name": "maxDistance"
                                          },
                                          {
                                            "type": "ArrowFunctionExpression",
                                            "start": 23061,
                                            "end": 23128,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 110
                                              }
                                            },
                                            "id": null,
                                            "generator": false,
                                            "expression": true,
                                            "async": false,
                                            "params": [
                                              {
                                                "type": "Identifier",
                                                "start": 23061,
                                                "end": 23064,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "arg"
                                              }
                                            ],
                                            "body": {
                                              "type": "BinaryExpression",
                                              "start": 23068,
                                              "end": 23128,
                                              "loc": {
                                                "start": {
                                                  "line": 546,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 546,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "CallExpression",
                                                "start": 23068,
                                                "end": 23121,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 103
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 23068,
                                                  "end": 23110,
                                                  "loc": {
                                                    "start": {
                                                      "line": 546,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 546,
                                                      "column": 92
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "CallExpression",
                                                    "start": 23068,
                                                    "end": 23102,
                                                    "loc": {
                                                      "start": {
                                                        "line": 546,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 546,
                                                        "column": 84
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 23068,
                                                      "end": 23097,
                                                      "loc": {
                                                        "start": {
                                                          "line": 546,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 546,
                                                          "column": 79
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23068,
                                                        "end": 23074,
                                                        "loc": {
                                                          "start": {
                                                            "line": 546,
                                                            "column": 50
                                                          },
                                                          "end": {
                                                            "line": 546,
                                                            "column": 56
                                                          }
                                                        },
                                                        "name": "Sketch"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23075,
                                                        "end": 23097,
                                                        "loc": {
                                                          "start": {
                                                            "line": 546,
                                                            "column": 57
                                                          },
                                                          "end": {
                                                            "line": 546,
                                                            "column": 79
                                                          }
                                                        },
                                                        "name": "ForObjectsWithChildren"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 23098,
                                                        "end": 23101,
                                                        "loc": {
                                                          "start": {
                                                            "line": 546,
                                                            "column": 80
                                                          },
                                                          "end": {
                                                            "line": 546,
                                                            "column": 83
                                                          }
                                                        },
                                                        "name": "arg"
                                                      }
                                                    ]
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 23103,
                                                    "end": 23110,
                                                    "loc": {
                                                      "start": {
                                                        "line": 546,
                                                        "column": 85
                                                      },
                                                      "end": {
                                                        "line": 546,
                                                        "column": 92
                                                      }
                                                    },
                                                    "name": "indexOf"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 23111,
                                                    "end": 23120,
                                                    "loc": {
                                                      "start": {
                                                        "line": 546,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 546,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "geomPoint"
                                                  }
                                                ]
                                              },
                                              "operator": "!==",
                                              "right": {
                                                "type": "UnaryExpression",
                                                "start": 23126,
                                                "end": 23128,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 108
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 110
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Literal",
                                                  "start": 23127,
                                                  "end": 23128,
                                                  "loc": {
                                                    "start": {
                                                      "line": 546,
                                                      "column": 109
                                                    },
                                                    "end": {
                                                      "line": 546,
                                                      "column": 110
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 23157,
                                  "end": 23457,
                                  "loc": {
                                    "start": {
                                      "line": 549,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 553,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 23161,
                                    "end": 23233,
                                    "loc": {
                                      "start": {
                                        "line": 549,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 549,
                                        "column": 88
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 23161,
                                      "end": 23183,
                                      "loc": {
                                        "start": {
                                          "line": 549,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 549,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 23161,
                                        "end": 23173,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23174,
                                        "end": 23183,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 38
                                          }
                                        },
                                        "name": "isSnapped"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 23187,
                                      "end": 23233,
                                      "loc": {
                                        "start": {
                                          "line": 549,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 549,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 23187,
                                        "end": 23222,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 77
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23187,
                                          "end": 23220,
                                          "loc": {
                                            "start": {
                                              "line": 549,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 549,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 23187,
                                            "end": 23213,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 68
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23187,
                                              "end": 23199,
                                              "loc": {
                                                "start": {
                                                  "line": 549,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 549,
                                                  "column": 54
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23200,
                                              "end": 23213,
                                              "loc": {
                                                "start": {
                                                  "line": 549,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 549,
                                                  "column": 68
                                                }
                                              },
                                              "name": "snappingShift"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23214,
                                            "end": 23220,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 75
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "operator": "<",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 23225,
                                        "end": 23233,
                                        "loc": {
                                          "start": {
                                            "line": 549,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 549,
                                            "column": 88
                                          }
                                        },
                                        "name": "distance"
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 23235,
                                    "end": 23457,
                                    "loc": {
                                      "start": {
                                        "line": 549,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 553,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23253,
                                        "end": 23300,
                                        "loc": {
                                          "start": {
                                            "line": 550,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 550,
                                            "column": 63
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23253,
                                          "end": 23299,
                                          "loc": {
                                            "start": {
                                              "line": 550,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 550,
                                              "column": 62
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23253,
                                            "end": 23261,
                                            "loc": {
                                              "start": {
                                                "line": 550,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 550,
                                                "column": 24
                                              }
                                            },
                                            "name": "distance"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 23264,
                                            "end": 23299,
                                            "loc": {
                                              "start": {
                                                "line": 550,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 550,
                                                "column": 62
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23264,
                                              "end": 23297,
                                              "loc": {
                                                "start": {
                                                  "line": 550,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 550,
                                                  "column": 60
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 23264,
                                                "end": 23290,
                                                "loc": {
                                                  "start": {
                                                    "line": 550,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 550,
                                                    "column": 53
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23264,
                                                  "end": 23276,
                                                  "loc": {
                                                    "start": {
                                                      "line": 550,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 550,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "snappedPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23277,
                                                  "end": 23290,
                                                  "loc": {
                                                    "start": {
                                                      "line": 550,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 550,
                                                      "column": 53
                                                    }
                                                  },
                                                  "name": "snappingShift"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23291,
                                                "end": 23297,
                                                "loc": {
                                                  "start": {
                                                    "line": 550,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 550,
                                                    "column": 60
                                                  }
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23317,
                                        "end": 23357,
                                        "loc": {
                                          "start": {
                                            "line": 551,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 551,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23317,
                                          "end": 23356,
                                          "loc": {
                                            "start": {
                                              "line": 551,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 551,
                                              "column": 55
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23317,
                                            "end": 23325,
                                            "loc": {
                                              "start": {
                                                "line": 551,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 551,
                                                "column": 24
                                              }
                                            },
                                            "name": "toReturn"
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 23328,
                                            "end": 23356,
                                            "loc": {
                                              "start": {
                                                "line": 551,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 551,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23328,
                                              "end": 23340,
                                              "loc": {
                                                "start": {
                                                  "line": 551,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 551,
                                                  "column": 39
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23341,
                                              "end": 23356,
                                              "loc": {
                                                "start": {
                                                  "line": 551,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 551,
                                                  "column": 55
                                                }
                                              },
                                              "name": "snappedPosition"
                                            },
                                            "computed": false
                                          }
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 23374,
                                        "end": 23443,
                                        "loc": {
                                          "start": {
                                            "line": 552,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 552,
                                            "column": 85
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 23378,
                                          "end": 23402,
                                          "loc": {
                                            "start": {
                                              "line": 552,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 552,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 23380,
                                            "end": 23401,
                                            "loc": {
                                              "start": {
                                                "line": 552,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 552,
                                                "column": 43
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 23380,
                                              "end": 23383,
                                              "loc": {
                                                "start": {
                                                  "line": 552,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 552,
                                                  "column": 25
                                                }
                                              },
                                              "name": "obj"
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 23396,
                                              "end": 23401,
                                              "loc": {
                                                "start": {
                                                  "line": 552,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 552,
                                                  "column": 43
                                                }
                                              },
                                              "name": "Point"
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 23404,
                                          "end": 23443,
                                          "loc": {
                                            "start": {
                                              "line": 552,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 552,
                                              "column": 85
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 23404,
                                            "end": 23442,
                                            "loc": {
                                              "start": {
                                                "line": 552,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 552,
                                                "column": 84
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23404,
                                              "end": 23416,
                                              "loc": {
                                                "start": {
                                                  "line": 552,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 552,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23404,
                                                "end": 23412,
                                                "loc": {
                                                  "start": {
                                                    "line": 552,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 552,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "toReturn"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23413,
                                                "end": 23416,
                                                "loc": {
                                                  "start": {
                                                    "line": 552,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 552,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "sub"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 23417,
                                                "end": 23441,
                                                "loc": {
                                                  "start": {
                                                    "line": 552,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 552,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "fromMousePositionToPoint"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 23479,
                      "end": 23495,
                      "loc": {
                        "start": {
                          "line": 556,
                          "column": 8
                        },
                        "end": {
                          "line": 556,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 23486,
                        "end": 23494,
                        "loc": {
                          "start": {
                            "line": 556,
                            "column": 15
                          },
                          "end": {
                            "line": 556,
                            "column": 23
                          }
                        },
                        "name": "toReturn"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23507,
              "end": 23577,
              "loc": {
                "start": {
                  "line": 559,
                  "column": 4
                },
                "end": {
                  "line": 561,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23507,
                "end": 23521,
                "loc": {
                  "start": {
                    "line": 559,
                    "column": 4
                  },
                  "end": {
                    "line": 559,
                    "column": 18
                  }
                },
                "name": "showDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23521,
                "end": 23577,
                "loc": {
                  "start": {
                    "line": 559,
                    "column": 18
                  },
                  "end": {
                    "line": 561,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23524,
                  "end": 23577,
                  "loc": {
                    "start": {
                      "line": 559,
                      "column": 21
                    },
                    "end": {
                      "line": 561,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23534,
                      "end": 23571,
                      "loc": {
                        "start": {
                          "line": 560,
                          "column": 8
                        },
                        "end": {
                          "line": 560,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23534,
                        "end": 23570,
                        "loc": {
                          "start": {
                            "line": 560,
                            "column": 8
                          },
                          "end": {
                            "line": 560,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23534,
                          "end": 23551,
                          "loc": {
                            "start": {
                              "line": 560,
                              "column": 8
                            },
                            "end": {
                              "line": 560,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23534,
                            "end": 23538,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 8
                              },
                              "end": {
                                "line": 560,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23539,
                            "end": 23551,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 13
                              },
                              "end": {
                                "line": 560,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23552,
                            "end": 23569,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 26
                              },
                              "end": {
                                "line": 560,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23552,
                              "end": 23556,
                              "loc": {
                                "start": {
                                  "line": 560,
                                  "column": 26
                                },
                                "end": {
                                  "line": 560,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23557,
                              "end": 23569,
                              "loc": {
                                "start": {
                                  "line": 560,
                                  "column": 31
                                },
                                "end": {
                                  "line": 560,
                                  "column": 43
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23583,
              "end": 23656,
              "loc": {
                "start": {
                  "line": 563,
                  "column": 4
                },
                "end": {
                  "line": 565,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23583,
                "end": 23597,
                "loc": {
                  "start": {
                    "line": 563,
                    "column": 4
                  },
                  "end": {
                    "line": 563,
                    "column": 18
                  }
                },
                "name": "hideDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23597,
                "end": 23656,
                "loc": {
                  "start": {
                    "line": 563,
                    "column": 18
                  },
                  "end": {
                    "line": 565,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23600,
                  "end": 23656,
                  "loc": {
                    "start": {
                      "line": 563,
                      "column": 21
                    },
                    "end": {
                      "line": 565,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23610,
                      "end": 23650,
                      "loc": {
                        "start": {
                          "line": 564,
                          "column": 8
                        },
                        "end": {
                          "line": 564,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23610,
                        "end": 23649,
                        "loc": {
                          "start": {
                            "line": 564,
                            "column": 8
                          },
                          "end": {
                            "line": 564,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23610,
                          "end": 23630,
                          "loc": {
                            "start": {
                              "line": 564,
                              "column": 8
                            },
                            "end": {
                              "line": 564,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23610,
                            "end": 23614,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 8
                              },
                              "end": {
                                "line": 564,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23615,
                            "end": 23630,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 13
                              },
                              "end": {
                                "line": 564,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23631,
                            "end": 23648,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 29
                              },
                              "end": {
                                "line": 564,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23631,
                              "end": 23635,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 29
                                },
                                "end": {
                                  "line": 564,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23636,
                              "end": 23648,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 34
                                },
                                "end": {
                                  "line": 564,
                                  "column": 46
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23662,
                  "end": 23714,
                  "loc": {
                    "start": {
                      "line": 567,
                      "column": 4
                    },
                    "end": {
                      "line": 567,
                      "column": 56
                    }
                  },
                  "range": [
                    23662,
                    23714
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 23719,
              "end": 26862,
              "loc": {
                "start": {
                  "line": 568,
                  "column": 4
                },
                "end": {
                  "line": 638,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23719,
                "end": 23742,
                "loc": {
                  "start": {
                    "line": 568,
                    "column": 4
                  },
                  "end": {
                    "line": 568,
                    "column": 27
                  }
                },
                "name": "updateDimensionsFactory",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23742,
                "end": 26862,
                "loc": {
                  "start": {
                    "line": 568,
                    "column": 27
                  },
                  "end": {
                    "line": 638,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23743,
                    "end": 23748,
                    "loc": {
                      "start": {
                        "line": 568,
                        "column": 28
                      },
                      "end": {
                        "line": 568,
                        "column": 33
                      }
                    },
                    "name": "input"
                  },
                  {
                    "type": "Identifier",
                    "start": 23750,
                    "end": 23756,
                    "loc": {
                      "start": {
                        "line": 568,
                        "column": 35
                      },
                      "end": {
                        "line": 568,
                        "column": 41
                      }
                    },
                    "name": "result"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23758,
                  "end": 26862,
                  "loc": {
                    "start": {
                      "line": 568,
                      "column": 43
                    },
                    "end": {
                      "line": 638,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 23768,
                      "end": 23790,
                      "loc": {
                        "start": {
                          "line": 569,
                          "column": 8
                        },
                        "end": {
                          "line": 569,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23772,
                          "end": 23789,
                          "loc": {
                            "start": {
                              "line": 569,
                              "column": 12
                            },
                            "end": {
                              "line": 569,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23772,
                            "end": 23776,
                            "loc": {
                              "start": {
                                "line": 569,
                                "column": 12
                              },
                              "end": {
                                "line": 569,
                                "column": 16
                              }
                            },
                            "name": "data"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 23779,
                            "end": 23789,
                            "loc": {
                              "start": {
                                "line": 569,
                                "column": 19
                              },
                              "end": {
                                "line": 569,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23779,
                              "end": 23784,
                              "loc": {
                                "start": {
                                  "line": 569,
                                  "column": 19
                                },
                                "end": {
                                  "line": 569,
                                  "column": 24
                                }
                              },
                              "name": "input"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23785,
                              "end": 23789,
                              "loc": {
                                "start": {
                                  "line": 569,
                                  "column": 25
                                },
                                "end": {
                                  "line": 569,
                                  "column": 29
                                }
                              },
                              "name": "data"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23799,
                      "end": 23864,
                      "loc": {
                        "start": {
                          "line": 570,
                          "column": 8
                        },
                        "end": {
                          "line": 570,
                          "column": 73
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23803,
                          "end": 23863,
                          "loc": {
                            "start": {
                              "line": 570,
                              "column": 12
                            },
                            "end": {
                              "line": 570,
                              "column": 72
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23803,
                            "end": 23815,
                            "loc": {
                              "start": {
                                "line": 570,
                                "column": 12
                              },
                              "end": {
                                "line": 570,
                                "column": 24
                              }
                            },
                            "name": "worldToLocal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 23818,
                            "end": 23863,
                            "loc": {
                              "start": {
                                "line": 570,
                                "column": 27
                              },
                              "end": {
                                "line": 570,
                                "column": 72
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23818,
                              "end": 23850,
                              "loc": {
                                "start": {
                                  "line": 570,
                                  "column": 27
                                },
                                "end": {
                                  "line": 570,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 23819,
                                "end": 23838,
                                "loc": {
                                  "start": {
                                    "line": 570,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 570,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 23823,
                                  "end": 23836,
                                  "loc": {
                                    "start": {
                                      "line": 570,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 570,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 23823,
                                    "end": 23828,
                                    "loc": {
                                      "start": {
                                        "line": 570,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 570,
                                        "column": 37
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 23829,
                                    "end": 23836,
                                    "loc": {
                                      "start": {
                                        "line": 570,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 570,
                                        "column": 45
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [],
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23840,
                                "end": 23850,
                                "loc": {
                                  "start": {
                                    "line": 570,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 570,
                                    "column": 59
                                  }
                                },
                                "name": "getInverse"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 23851,
                                "end": 23862,
                                "loc": {
                                  "start": {
                                    "line": 570,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 570,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23851,
                                  "end": 23855,
                                  "loc": {
                                    "start": {
                                      "line": 570,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 570,
                                      "column": 64
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23856,
                                  "end": 23862,
                                  "loc": {
                                    "start": {
                                      "line": 570,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 570,
                                      "column": 71
                                    }
                                  },
                                  "name": "matrix"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 23874,
                      "end": 26856,
                      "loc": {
                        "start": {
                          "line": 572,
                          "column": 8
                        },
                        "end": {
                          "line": 637,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 23882,
                        "end": 23892,
                        "loc": {
                          "start": {
                            "line": 572,
                            "column": 16
                          },
                          "end": {
                            "line": 572,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 23882,
                          "end": 23887,
                          "loc": {
                            "start": {
                              "line": 572,
                              "column": 16
                            },
                            "end": {
                              "line": 572,
                              "column": 21
                            }
                          },
                          "name": "input"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 23888,
                          "end": 23892,
                          "loc": {
                            "start": {
                              "line": 572,
                              "column": 22
                            },
                            "end": {
                              "line": 572,
                              "column": 26
                            }
                          },
                          "name": "type"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 23908,
                          "end": 25157,
                          "loc": {
                            "start": {
                              "line": 573,
                              "column": 12
                            },
                            "end": {
                              "line": 599,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 23987,
                              "end": 24071,
                              "loc": {
                                "start": {
                                  "line": 575,
                                  "column": 16
                                },
                                "end": {
                                  "line": 575,
                                  "column": 100
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 23991,
                                  "end": 24070,
                                  "loc": {
                                    "start": {
                                      "line": 575,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 575,
                                      "column": 99
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 23991,
                                    "end": 23994,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 23
                                      }
                                    },
                                    "name": "pos",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 23997,
                                    "end": 24070,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23997,
                                      "end": 24056,
                                      "loc": {
                                        "start": {
                                          "line": 575,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 575,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 23997,
                                        "end": 24043,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 72
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23997,
                                          "end": 24028,
                                          "loc": {
                                            "start": {
                                              "line": 575,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 575,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 23998,
                                            "end": 24017,
                                            "loc": {
                                              "start": {
                                                "line": 575,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 575,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24002,
                                              "end": 24015,
                                              "loc": {
                                                "start": {
                                                  "line": 575,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 575,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24002,
                                                "end": 24007,
                                                "loc": {
                                                  "start": {
                                                    "line": 575,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 575,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24008,
                                                "end": 24015,
                                                "loc": {
                                                  "start": {
                                                    "line": 575,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 575,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24019,
                                            "end": 24028,
                                            "loc": {
                                              "start": {
                                                "line": 575,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 575,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 24029,
                                            "end": 24042,
                                            "loc": {
                                              "start": {
                                                "line": 575,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 575,
                                                "column": 71
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24029,
                                              "end": 24033,
                                              "loc": {
                                                "start": {
                                                  "line": 575,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 575,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24034,
                                              "end": 24042,
                                              "loc": {
                                                "start": {
                                                  "line": 575,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 575,
                                                  "column": 71
                                                }
                                              },
                                              "name": "position"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24044,
                                        "end": 24056,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 85
                                          }
                                        },
                                        "name": "applyMatrix4"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24057,
                                        "end": 24069,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 98
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "transform to sketch coordinates",
                                  "start": 23937,
                                  "end": 23970,
                                  "loc": {
                                    "start": {
                                      "line": 574,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 574,
                                      "column": 49
                                    }
                                  },
                                  "range": [
                                    23937,
                                    23970
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24088,
                              "end": 24174,
                              "loc": {
                                "start": {
                                  "line": 576,
                                  "column": 16
                                },
                                "end": {
                                  "line": 576,
                                  "column": 102
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24092,
                                  "end": 24173,
                                  "loc": {
                                    "start": {
                                      "line": 576,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 576,
                                      "column": 101
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24092,
                                    "end": 24095,
                                    "loc": {
                                      "start": {
                                        "line": 576,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 576,
                                        "column": 23
                                      }
                                    },
                                    "name": "dir"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24098,
                                    "end": 24173,
                                    "loc": {
                                      "start": {
                                        "line": 576,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 576,
                                        "column": 101
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24098,
                                      "end": 24159,
                                      "loc": {
                                        "start": {
                                          "line": 576,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 576,
                                          "column": 87
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 24098,
                                        "end": 24140,
                                        "loc": {
                                          "start": {
                                            "line": 576,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 576,
                                            "column": 68
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24098,
                                          "end": 24129,
                                          "loc": {
                                            "start": {
                                              "line": 576,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 576,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 24099,
                                            "end": 24118,
                                            "loc": {
                                              "start": {
                                                "line": 576,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 576,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24103,
                                              "end": 24116,
                                              "loc": {
                                                "start": {
                                                  "line": 576,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 576,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24103,
                                                "end": 24108,
                                                "loc": {
                                                  "start": {
                                                    "line": 576,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 576,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24109,
                                                "end": 24116,
                                                "loc": {
                                                  "start": {
                                                    "line": 576,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 576,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24120,
                                            "end": 24129,
                                            "loc": {
                                              "start": {
                                                "line": 576,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 576,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 24130,
                                            "end": 24139,
                                            "loc": {
                                              "start": {
                                                "line": 576,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 576,
                                                "column": 67
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24130,
                                              "end": 24134,
                                              "loc": {
                                                "start": {
                                                  "line": 576,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 576,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24135,
                                              "end": 24139,
                                              "loc": {
                                                "start": {
                                                  "line": 576,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 576,
                                                  "column": 67
                                                }
                                              },
                                              "name": "axis"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24141,
                                        "end": 24159,
                                        "loc": {
                                          "start": {
                                            "line": 576,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 576,
                                            "column": 87
                                          }
                                        },
                                        "name": "transformDirection"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24160,
                                        "end": 24172,
                                        "loc": {
                                          "start": {
                                            "line": 576,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 576,
                                            "column": 100
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24191,
                              "end": 24217,
                              "loc": {
                                "start": {
                                  "line": 577,
                                  "column": 16
                                },
                                "end": {
                                  "line": 577,
                                  "column": 42
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24195,
                                  "end": 24216,
                                  "loc": {
                                    "start": {
                                      "line": 577,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 577,
                                      "column": 41
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24195,
                                    "end": 24201,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 26
                                      }
                                    },
                                    "name": "height"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24204,
                                    "end": 24216,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24204,
                                      "end": 24214,
                                      "loc": {
                                        "start": {
                                          "line": 577,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 577,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24204,
                                        "end": 24207,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 32
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24208,
                                        "end": 24214,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 39
                                          }
                                        },
                                        "name": "length"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24234,
                              "end": 24292,
                              "loc": {
                                "start": {
                                  "line": 578,
                                  "column": 16
                                },
                                "end": {
                                  "line": 578,
                                  "column": 74
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24238,
                                  "end": 24291,
                                  "loc": {
                                    "start": {
                                      "line": 578,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 578,
                                      "column": 73
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24238,
                                    "end": 24242,
                                    "loc": {
                                      "start": {
                                        "line": 578,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 578,
                                        "column": 24
                                      }
                                    },
                                    "name": "diam"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24245,
                                    "end": 24291,
                                    "loc": {
                                      "start": {
                                        "line": 578,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 578,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24245,
                                      "end": 24253,
                                      "loc": {
                                        "start": {
                                          "line": 578,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 578,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24245,
                                        "end": 24249,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 31
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24250,
                                        "end": 24253,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 35
                                          }
                                        },
                                        "name": "max"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 24254,
                                        "end": 24271,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24254,
                                          "end": 24268,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24254,
                                            "end": 24258,
                                            "loc": {
                                              "start": {
                                                "line": 578,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 578,
                                                "column": 40
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24259,
                                            "end": 24268,
                                            "loc": {
                                              "start": {
                                                "line": 578,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 578,
                                                "column": 50
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24269,
                                          "end": 24270,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 24273,
                                        "end": 24290,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24273,
                                          "end": 24287,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24273,
                                            "end": 24277,
                                            "loc": {
                                              "start": {
                                                "line": 578,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 578,
                                                "column": 59
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24278,
                                            "end": 24287,
                                            "loc": {
                                              "start": {
                                                "line": 578,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 578,
                                                "column": 69
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24288,
                                          "end": 24289,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 71
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24310,
                                  "end": 24334,
                                  "loc": {
                                    "start": {
                                      "line": 580,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 580,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24310,
                                    24334
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24351,
                              "end": 24383,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 16
                                },
                                "end": {
                                  "line": 581,
                                  "column": 48
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24355,
                                  "end": 24382,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 47
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24355,
                                    "end": 24359,
                                    "loc": {
                                      "start": {
                                        "line": 581,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 581,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24362,
                                    "end": 24382,
                                    "loc": {
                                      "start": {
                                        "line": 581,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 581,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24366,
                                      "end": 24380,
                                      "loc": {
                                        "start": {
                                          "line": 581,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 581,
                                          "column": 45
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24366,
                                        "end": 24371,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24372,
                                        "end": 24380,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 45
                                          }
                                        },
                                        "name": "Geometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24310,
                                  "end": 24334,
                                  "loc": {
                                    "start": {
                                      "line": 580,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 580,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24310,
                                    24334
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24400,
                              "end": 24632,
                              "loc": {
                                "start": {
                                  "line": 582,
                                  "column": 16
                                },
                                "end": {
                                  "line": 586,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24400,
                                "end": 24631,
                                "loc": {
                                  "start": {
                                    "line": 582,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 586,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24400,
                                  "end": 24418,
                                  "loc": {
                                    "start": {
                                      "line": 582,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 582,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24400,
                                    "end": 24413,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24400,
                                      "end": 24404,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24405,
                                      "end": 24413,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24414,
                                    "end": 24418,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 34
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24446,
                                    "end": 24483,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24450,
                                      "end": 24463,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24450,
                                        "end": 24455,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24456,
                                        "end": 24463,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24464,
                                        "end": 24470,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24472,
                                        "end": 24479,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 24472,
                                          "end": 24477,
                                          "loc": {
                                            "start": {
                                              "line": 583,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 583,
                                              "column": 57
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 24473,
                                            "end": 24477,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 57
                                              }
                                            },
                                            "name": "diam"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24478,
                                          "end": 24479,
                                          "loc": {
                                            "start": {
                                              "line": 583,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 583,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24481,
                                        "end": 24482,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24511,
                                    "end": 24548,
                                    "loc": {
                                      "start": {
                                        "line": 584,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 584,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24515,
                                      "end": 24528,
                                      "loc": {
                                        "start": {
                                          "line": 584,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 584,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24515,
                                        "end": 24520,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24521,
                                        "end": 24528,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24529,
                                        "end": 24535,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24538,
                                        "end": 24544,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 24538,
                                          "end": 24542,
                                          "loc": {
                                            "start": {
                                              "line": 584,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 584,
                                              "column": 57
                                            }
                                          },
                                          "name": "diam"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24543,
                                          "end": 24544,
                                          "loc": {
                                            "start": {
                                              "line": 584,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 584,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24546,
                                        "end": 24547,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24576,
                                    "end": 24613,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24580,
                                      "end": 24593,
                                      "loc": {
                                        "start": {
                                          "line": 585,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 585,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24580,
                                        "end": 24585,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24586,
                                        "end": 24593,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24599,
                                        "end": 24600,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 50
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24608,
                                        "end": 24609,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 59
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24611,
                                        "end": 24612,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24649,
                              "end": 24775,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 16
                                },
                                "end": {
                                  "line": 590,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24649,
                                "end": 24774,
                                "loc": {
                                  "start": {
                                    "line": 587,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 590,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24649,
                                  "end": 24664,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24649,
                                    "end": 24659,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24649,
                                      "end": 24653,
                                      "loc": {
                                        "start": {
                                          "line": 587,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 587,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24654,
                                      "end": 24659,
                                      "loc": {
                                        "start": {
                                          "line": 587,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 587,
                                          "column": 26
                                        }
                                      },
                                      "name": "faces"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24660,
                                    "end": 24664,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24686,
                                    "end": 24710,
                                    "loc": {
                                      "start": {
                                        "line": 588,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 588,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24690,
                                      "end": 24701,
                                      "loc": {
                                        "start": {
                                          "line": 588,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 588,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24690,
                                        "end": 24695,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24696,
                                        "end": 24701,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24702,
                                        "end": 24703,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24705,
                                        "end": 24706,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 40
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24708,
                                        "end": 24709,
                                        "loc": {
                                          "start": {
                                            "line": 588,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 588,
                                            "column": 43
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24732,
                                    "end": 24756,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24736,
                                      "end": 24747,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24736,
                                        "end": 24741,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24742,
                                        "end": 24747,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24748,
                                        "end": 24749,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24751,
                                        "end": 24752,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 40
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24754,
                                        "end": 24755,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 43
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24792,
                              "end": 24818,
                              "loc": {
                                "start": {
                                  "line": 591,
                                  "column": 16
                                },
                                "end": {
                                  "line": 591,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24792,
                                "end": 24817,
                                "loc": {
                                  "start": {
                                    "line": 591,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 591,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24792,
                                  "end": 24815,
                                  "loc": {
                                    "start": {
                                      "line": 591,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 591,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24792,
                                    "end": 24796,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24797,
                                    "end": 24815,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeFaceNormals"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24836,
                              "end": 24916,
                              "loc": {
                                "start": {
                                  "line": 593,
                                  "column": 16
                                },
                                "end": {
                                  "line": 593,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24840,
                                  "end": 24915,
                                  "loc": {
                                    "start": {
                                      "line": 593,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 593,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24840,
                                    "end": 24844,
                                    "loc": {
                                      "start": {
                                        "line": 593,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 593,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24847,
                                    "end": 24915,
                                    "loc": {
                                      "start": {
                                        "line": 593,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 593,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24851,
                                      "end": 24861,
                                      "loc": {
                                        "start": {
                                          "line": 593,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 593,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24851,
                                        "end": 24856,
                                        "loc": {
                                          "start": {
                                            "line": 593,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 593,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24857,
                                        "end": 24861,
                                        "loc": {
                                          "start": {
                                            "line": 593,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 593,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24862,
                                        "end": 24866,
                                        "loc": {
                                          "start": {
                                            "line": 593,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 593,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 24868,
                                        "end": 24914,
                                        "loc": {
                                          "start": {
                                            "line": 593,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 593,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24872,
                                          "end": 24895,
                                          "loc": {
                                            "start": {
                                              "line": 593,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 593,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24872,
                                            "end": 24877,
                                            "loc": {
                                              "start": {
                                                "line": 593,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 593,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24878,
                                            "end": 24895,
                                            "loc": {
                                              "start": {
                                                "line": 593,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 593,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 24896,
                                            "end": 24913,
                                            "loc": {
                                              "start": {
                                                "line": 593,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 593,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 24897,
                                                "end": 24912,
                                                "loc": {
                                                  "start": {
                                                    "line": 593,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 593,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 24897,
                                                  "end": 24902,
                                                  "loc": {
                                                    "start": {
                                                      "line": 593,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 593,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 24904,
                                                  "end": 24912,
                                                  "loc": {
                                                    "start": {
                                                      "line": 593,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 593,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 8388479,
                                                  "rawValue": 8388479,
                                                  "raw": "0x7fff7f"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24933,
                                  "end": 24972,
                                  "loc": {
                                    "start": {
                                      "line": 594,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 594,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24933,
                                    24972
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24989,
                              "end": 25013,
                              "loc": {
                                "start": {
                                  "line": 595,
                                  "column": 16
                                },
                                "end": {
                                  "line": 595,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24989,
                                "end": 25012,
                                "loc": {
                                  "start": {
                                    "line": 595,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 595,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24989,
                                  "end": 25007,
                                  "loc": {
                                    "start": {
                                      "line": 595,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 595,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24989,
                                    "end": 25002,
                                    "loc": {
                                      "start": {
                                        "line": 595,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 595,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24989,
                                      "end": 24993,
                                      "loc": {
                                        "start": {
                                          "line": 595,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 595,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh",
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24994,
                                      "end": 25002,
                                      "loc": {
                                        "start": {
                                          "line": 595,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 595,
                                          "column": 29
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25003,
                                    "end": 25007,
                                    "loc": {
                                      "start": {
                                        "line": 595,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 595,
                                        "column": 34
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25008,
                                    "end": 25011,
                                    "loc": {
                                      "start": {
                                        "line": 595,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 595,
                                        "column": 38
                                      }
                                    },
                                    "name": "pos"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24933,
                                  "end": 24972,
                                  "loc": {
                                    "start": {
                                      "line": 594,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 594,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24933,
                                    24972
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25030,
                              "end": 25098,
                              "loc": {
                                "start": {
                                  "line": 596,
                                  "column": 16
                                },
                                "end": {
                                  "line": 596,
                                  "column": 84
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25030,
                                "end": 25097,
                                "loc": {
                                  "start": {
                                    "line": 596,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 596,
                                    "column": 83
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25030,
                                  "end": 25064,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25030,
                                    "end": 25045,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 25030,
                                      "end": 25034,
                                      "loc": {
                                        "start": {
                                          "line": 596,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 596,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25035,
                                      "end": 25045,
                                      "loc": {
                                        "start": {
                                          "line": 596,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 596,
                                          "column": 31
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25046,
                                    "end": 25064,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 50
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 25065,
                                    "end": 25091,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 77
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25069,
                                      "end": 25082,
                                      "loc": {
                                        "start": {
                                          "line": 596,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 596,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25069,
                                        "end": 25074,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 60
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25075,
                                        "end": 25082,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 68
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25083,
                                        "end": 25084,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 70
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25086,
                                        "end": 25087,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 73
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25089,
                                        "end": 25090,
                                        "loc": {
                                          "start": {
                                            "line": 596,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 596,
                                            "column": 76
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 25093,
                                    "end": 25096,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 82
                                      }
                                    },
                                    "name": "dir"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25116,
                              "end": 25134,
                              "loc": {
                                "start": {
                                  "line": 598,
                                  "column": 16
                                },
                                "end": {
                                  "line": 598,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25116,
                                "end": 25133,
                                "loc": {
                                  "start": {
                                    "line": 598,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 598,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25116,
                                  "end": 25127,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25116,
                                    "end": 25122,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25123,
                                    "end": 25127,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25128,
                                    "end": 25132,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 32
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25151,
                              "end": 25157,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 16
                                },
                                "end": {
                                  "line": 599,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 23913,
                            "end": 23919,
                            "loc": {
                              "start": {
                                "line": 573,
                                "column": 17
                              },
                              "end": {
                                "line": 573,
                                "column": 23
                              }
                            },
                            "value": "Cone",
                            "rawValue": "Cone",
                            "raw": "'Cone'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 25171,
                          "end": 26625,
                          "loc": {
                            "start": {
                              "line": 601,
                              "column": 12
                            },
                            "end": {
                              "line": 630,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "IfStatement",
                              "start": 25200,
                              "end": 25228,
                              "loc": {
                                "start": {
                                  "line": 602,
                                  "column": 16
                                },
                                "end": {
                                  "line": 602,
                                  "column": 44
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 25204,
                                "end": 25220,
                                "loc": {
                                  "start": {
                                    "line": 602,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 602,
                                    "column": 36
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25204,
                                  "end": 25213,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25204,
                                    "end": 25208,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 24
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25209,
                                    "end": 25213,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 29
                                      }
                                    },
                                    "name": "text"
                                  },
                                  "computed": false
                                },
                                "operator": "==",
                                "right": {
                                  "type": "Literal",
                                  "start": 25217,
                                  "end": 25220,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 36
                                    }
                                  },
                                  "value": "@",
                                  "rawValue": "@",
                                  "raw": "'@'"
                                }
                              },
                              "consequent": {
                                "type": "BreakStatement",
                                "start": 25222,
                                "end": 25228,
                                "loc": {
                                  "start": {
                                    "line": 602,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 602,
                                    "column": 44
                                  }
                                },
                                "label": null,
                                "leadingComments": null,
                                "trailingComments": null
                              },
                              "alternate": null,
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25229,
                                  "end": 25259,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25229,
                                    25259
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25276,
                                  "end": 25336,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25276,
                                    25336
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25353,
                                  "end": 25408,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25353,
                                    25408
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25425,
                                  "end": 25473,
                                  "loc": {
                                    "start": {
                                      "line": 605,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 605,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25425,
                                    25473
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25491,
                                  "end": 25507,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25491,
                                    25507
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25524,
                              "end": 25584,
                              "loc": {
                                "start": {
                                  "line": 608,
                                  "column": 16
                                },
                                "end": {
                                  "line": 608,
                                  "column": 76
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25528,
                                  "end": 25583,
                                  "loc": {
                                    "start": {
                                      "line": 608,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 608,
                                      "column": 75
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25528,
                                    "end": 25534,
                                    "loc": {
                                      "start": {
                                        "line": 608,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 608,
                                        "column": 26
                                      }
                                    },
                                    "name": "params",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "ObjectExpression",
                                    "start": 25537,
                                    "end": 25583,
                                    "loc": {
                                      "start": {
                                        "line": 608,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 608,
                                        "column": 75
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 25538,
                                        "end": 25545,
                                        "loc": {
                                          "start": {
                                            "line": 608,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 608,
                                            "column": 37
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25538,
                                          "end": 25542,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 34
                                            }
                                          },
                                          "name": "size"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25544,
                                          "end": 25545,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 37
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25547,
                                        "end": 25556,
                                        "loc": {
                                          "start": {
                                            "line": 608,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 608,
                                            "column": 48
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25547,
                                          "end": 25553,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 45
                                            }
                                          },
                                          "name": "height"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25555,
                                          "end": 25556,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 48
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25558,
                                        "end": 25582,
                                        "loc": {
                                          "start": {
                                            "line": 608,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 608,
                                            "column": 74
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25558,
                                          "end": 25562,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 54
                                            }
                                          },
                                          "name": "font"
                                        },
                                        "value": {
                                          "type": "MemberExpression",
                                          "start": 25564,
                                          "end": 25582,
                                          "loc": {
                                            "start": {
                                              "line": 608,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 608,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 25564,
                                            "end": 25577,
                                            "loc": {
                                              "start": {
                                                "line": 608,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 608,
                                                "column": 69
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 25564,
                                              "end": 25568,
                                              "loc": {
                                                "start": {
                                                  "line": 608,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 608,
                                                  "column": 60
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 25569,
                                              "end": 25577,
                                              "loc": {
                                                "start": {
                                                  "line": 608,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 608,
                                                  "column": 69
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25578,
                                            "end": 25582,
                                            "loc": {
                                              "start": {
                                                "line": 608,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 608,
                                                "column": 74
                                              }
                                            },
                                            "name": "font"
                                          },
                                          "computed": false
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25229,
                                  "end": 25259,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25229,
                                    25259
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25276,
                                  "end": 25336,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25276,
                                    25336
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25353,
                                  "end": 25408,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25353,
                                    25408
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25425,
                                  "end": 25473,
                                  "loc": {
                                    "start": {
                                      "line": 605,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 605,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25425,
                                    25473
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25491,
                                  "end": 25507,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25491,
                                    25507
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25601,
                              "end": 25654,
                              "loc": {
                                "start": {
                                  "line": 609,
                                  "column": 16
                                },
                                "end": {
                                  "line": 609,
                                  "column": 69
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25605,
                                  "end": 25653,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 68
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25605,
                                    "end": 25609,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25612,
                                    "end": 25653,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 68
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25616,
                                      "end": 25634,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25616,
                                        "end": 25621,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25622,
                                        "end": 25634,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 49
                                          }
                                        },
                                        "name": "TextGeometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 25635,
                                        "end": 25644,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25635,
                                          "end": 25639,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 54
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25640,
                                          "end": 25644,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 59
                                            }
                                          },
                                          "name": "text"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 25646,
                                        "end": 25652,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 67
                                          }
                                        },
                                        "name": "params"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25671,
                              "end": 25697,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 16
                                },
                                "end": {
                                  "line": 610,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25671,
                                "end": 25696,
                                "loc": {
                                  "start": {
                                    "line": 610,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 610,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25671,
                                  "end": 25694,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25671,
                                    "end": 25675,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25676,
                                    "end": 25694,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeBoundingBox"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25699,
                                  "end": 25714,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25699,
                                    25714
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25731,
                              "end": 25811,
                              "loc": {
                                "start": {
                                  "line": 611,
                                  "column": 16
                                },
                                "end": {
                                  "line": 611,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25735,
                                  "end": 25810,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25735,
                                    "end": 25739,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25742,
                                    "end": 25810,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25746,
                                      "end": 25756,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25746,
                                        "end": 25751,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25752,
                                        "end": 25756,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25757,
                                        "end": 25761,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 25763,
                                        "end": 25809,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 25767,
                                          "end": 25790,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25767,
                                            "end": 25772,
                                            "loc": {
                                              "start": {
                                                "line": 611,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 611,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25773,
                                            "end": 25790,
                                            "loc": {
                                              "start": {
                                                "line": 611,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 611,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 25791,
                                            "end": 25808,
                                            "loc": {
                                              "start": {
                                                "line": 611,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 611,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 25792,
                                                "end": 25807,
                                                "loc": {
                                                  "start": {
                                                    "line": 611,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 611,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 25792,
                                                  "end": 25797,
                                                  "loc": {
                                                    "start": {
                                                      "line": 611,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 611,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 25799,
                                                  "end": 25807,
                                                  "loc": {
                                                    "start": {
                                                      "line": 611,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 611,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 4194239,
                                                  "rawValue": 4194239,
                                                  "raw": "0x3fffbf"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25699,
                                  "end": 25714,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25699,
                                    25714
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25828,
                                  "end": 25864,
                                  "loc": {
                                    "start": {
                                      "line": 612,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 612,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25828,
                                    25864
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25881,
                              "end": 25912,
                              "loc": {
                                "start": {
                                  "line": 613,
                                  "column": 16
                                },
                                "end": {
                                  "line": 613,
                                  "column": 47
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25885,
                                  "end": 25911,
                                  "loc": {
                                    "start": {
                                      "line": 613,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 613,
                                      "column": 46
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25885,
                                    "end": 25888,
                                    "loc": {
                                      "start": {
                                        "line": 613,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 613,
                                        "column": 23
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25891,
                                    "end": 25911,
                                    "loc": {
                                      "start": {
                                        "line": 613,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 613,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25895,
                                      "end": 25909,
                                      "loc": {
                                        "start": {
                                          "line": 613,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 613,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25895,
                                        "end": 25900,
                                        "loc": {
                                          "start": {
                                            "line": 613,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 613,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25901,
                                        "end": 25909,
                                        "loc": {
                                          "start": {
                                            "line": 613,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 613,
                                            "column": 44
                                          }
                                        },
                                        "name": "Object3D"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25828,
                                  "end": 25864,
                                  "loc": {
                                    "start": {
                                      "line": 612,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 612,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25828,
                                    25864
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25929,
                                  "end": 25987,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 614,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25929,
                                    25987
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26004,
                              "end": 26020,
                              "loc": {
                                "start": {
                                  "line": 615,
                                  "column": 16
                                },
                                "end": {
                                  "line": 615,
                                  "column": 32
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26004,
                                "end": 26019,
                                "loc": {
                                  "start": {
                                    "line": 615,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 615,
                                    "column": 31
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26004,
                                  "end": 26012,
                                  "loc": {
                                    "start": {
                                      "line": 615,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 615,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26004,
                                    "end": 26007,
                                    "loc": {
                                      "start": {
                                        "line": 615,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 615,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26008,
                                    "end": 26012,
                                    "loc": {
                                      "start": {
                                        "line": 615,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 615,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 26015,
                                  "end": 26019,
                                  "loc": {
                                    "start": {
                                      "line": 615,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 615,
                                      "column": 31
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25929,
                                  "end": 25987,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 614,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25929,
                                    25987
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26037,
                              "end": 26051,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 16
                                },
                                "end": {
                                  "line": 616,
                                  "column": 30
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26037,
                                "end": 26050,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 29
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26037,
                                  "end": 26044,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26037,
                                    "end": 26040,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26041,
                                    "end": 26044,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 23
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26045,
                                    "end": 26049,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 28
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26068,
                              "end": 26133,
                              "loc": {
                                "start": {
                                  "line": 617,
                                  "column": 16
                                },
                                "end": {
                                  "line": 617,
                                  "column": 81
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26068,
                                "end": 26132,
                                "loc": {
                                  "start": {
                                    "line": 617,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 617,
                                    "column": 80
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26068,
                                  "end": 26118,
                                  "loc": {
                                    "start": {
                                      "line": 617,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 617,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 26068,
                                    "end": 26105,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 53
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26068,
                                      "end": 26090,
                                      "loc": {
                                        "start": {
                                          "line": 617,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 617,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 26068,
                                        "end": 26080,
                                        "loc": {
                                          "start": {
                                            "line": 617,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 617,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26068,
                                          "end": 26071,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 19
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26072,
                                          "end": 26080,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 28
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26081,
                                        "end": 26090,
                                        "loc": {
                                          "start": {
                                            "line": 617,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 617,
                                            "column": 38
                                          }
                                        },
                                        "name": "fromArray"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 26091,
                                        "end": 26104,
                                        "loc": {
                                          "start": {
                                            "line": 617,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 617,
                                            "column": 52
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26091,
                                          "end": 26095,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 43
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26096,
                                          "end": 26104,
                                          "loc": {
                                            "start": {
                                              "line": 617,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 617,
                                              "column": 52
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26106,
                                    "end": 26118,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 66
                                      }
                                    },
                                    "name": "applyMatrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26119,
                                    "end": 26131,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 79
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26151,
                                  "end": 26175,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26151,
                                    26175
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26192,
                              "end": 26335,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26192,
                                "end": 26334,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 17
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26192,
                                  "end": 26208,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26192,
                                    "end": 26195,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26196,
                                    "end": 26208,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 32
                                      }
                                    },
                                    "name": "setGeomSizes"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "FunctionExpression",
                                  "start": 26211,
                                  "end": 26334,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 623,
                                      "column": 17
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 26220,
                                      "end": 26225,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 49
                                        }
                                      },
                                      "name": "sizes"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 26227,
                                    "end": 26334,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 26249,
                                        "end": 26266,
                                        "loc": {
                                          "start": {
                                            "line": 621,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 621,
                                            "column": 37
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 26253,
                                            "end": 26265,
                                            "loc": {
                                              "start": {
                                                "line": 621,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 621,
                                                "column": 36
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 26253,
                                              "end": 26254,
                                              "loc": {
                                                "start": {
                                                  "line": 621,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 621,
                                                  "column": 25
                                                }
                                              },
                                              "name": "s"
                                            },
                                            "init": {
                                              "type": "MemberExpression",
                                              "start": 26257,
                                              "end": 26265,
                                              "loc": {
                                                "start": {
                                                  "line": 621,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 621,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 26257,
                                                "end": 26262,
                                                "loc": {
                                                  "start": {
                                                    "line": 621,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 621,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "sizes"
                                              },
                                              "property": {
                                                "type": "Literal",
                                                "start": 26263,
                                                "end": 26264,
                                                "loc": {
                                                  "start": {
                                                    "line": 621,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 621,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "computed": true
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 26287,
                                        "end": 26316,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 26287,
                                          "end": 26315,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 26287,
                                            "end": 26306,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 26287,
                                              "end": 26302,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 26287,
                                                "end": 26296,
                                                "loc": {
                                                  "start": {
                                                    "line": 622,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 622,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 26287,
                                                  "end": 26291,
                                                  "loc": {
                                                    "start": {
                                                      "line": 622,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 622,
                                                      "column": 24
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 26292,
                                                  "end": 26296,
                                                  "loc": {
                                                    "start": {
                                                      "line": 622,
                                                      "column": 25
                                                    },
                                                    "end": {
                                                      "line": 622,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "mesh"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 26297,
                                                "end": 26302,
                                                "loc": {
                                                  "start": {
                                                    "line": 622,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 622,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "scale"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 26303,
                                              "end": 26306,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 39
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 26307,
                                              "end": 26308,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 41
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26310,
                                              "end": 26311,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 44
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26313,
                                              "end": 26314,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 47
                                                }
                                              },
                                              "name": "s"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26151,
                                  "end": 26175,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26151,
                                    26175
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26352,
                              "end": 26416,
                              "loc": {
                                "start": {
                                  "line": 624,
                                  "column": 16
                                },
                                "end": {
                                  "line": 624,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26352,
                                "end": 26415,
                                "loc": {
                                  "start": {
                                    "line": 624,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 624,
                                    "column": 79
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26352,
                                  "end": 26389,
                                  "loc": {
                                    "start": {
                                      "line": 624,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 624,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26352,
                                    "end": 26384,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26352,
                                      "end": 26360,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 24
                                        }
                                      },
                                      "name": "Sketcher"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26361,
                                      "end": 26384,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 48
                                        }
                                      },
                                      "name": "mixinPixelSizedGeometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26385,
                                    "end": 26389,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 53
                                      }
                                    },
                                    "name": "call"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26390,
                                    "end": 26393,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 57
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  {
                                    "type": "LogicalExpression",
                                    "start": 26395,
                                    "end": 26414,
                                    "loc": {
                                      "start": {
                                        "line": 624,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 624,
                                        "column": 78
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 26395,
                                      "end": 26408,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 72
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26395,
                                        "end": 26399,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 63
                                          }
                                        },
                                        "name": "data"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26400,
                                        "end": 26408,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 72
                                          }
                                        },
                                        "name": "fontSize"
                                      },
                                      "computed": false
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "Literal",
                                      "start": 26412,
                                      "end": 26414,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 78
                                        }
                                      },
                                      "value": 12,
                                      "rawValue": 12,
                                      "raw": "12"
                                    }
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26433,
                                  "end": 26461,
                                  "loc": {
                                    "start": {
                                      "line": 625,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 625,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26433,
                                    26461
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26478,
                              "end": 26508,
                              "loc": {
                                "start": {
                                  "line": 626,
                                  "column": 16
                                },
                                "end": {
                                  "line": 626,
                                  "column": 46
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26482,
                                  "end": 26507,
                                  "loc": {
                                    "start": {
                                      "line": 626,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 626,
                                      "column": 45
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26482,
                                    "end": 26486,
                                    "loc": {
                                      "start": {
                                        "line": 626,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 626,
                                        "column": 24
                                      }
                                    },
                                    "name": "view",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 26489,
                                    "end": 26507,
                                    "loc": {
                                      "start": {
                                        "line": 626,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 626,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 26489,
                                      "end": 26502,
                                      "loc": {
                                        "start": {
                                          "line": 626,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 626,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 26489,
                                        "end": 26493,
                                        "loc": {
                                          "start": {
                                            "line": 626,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 626,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26494,
                                        "end": 26502,
                                        "loc": {
                                          "start": {
                                            "line": 626,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 626,
                                            "column": 40
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26503,
                                      "end": 26507,
                                      "loc": {
                                        "start": {
                                          "line": 626,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 626,
                                          "column": 45
                                        }
                                      },
                                      "name": "view"
                                    },
                                    "computed": false
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26433,
                                  "end": 26461,
                                  "loc": {
                                    "start": {
                                      "line": 625,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 625,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26433,
                                    26461
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26525,
                              "end": 26567,
                              "loc": {
                                "start": {
                                  "line": 627,
                                  "column": 16
                                },
                                "end": {
                                  "line": 627,
                                  "column": 58
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26525,
                                "end": 26566,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26525,
                                  "end": 26555,
                                  "loc": {
                                    "start": {
                                      "line": 627,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 627,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26525,
                                    "end": 26533,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 24
                                      }
                                    },
                                    "name": "Sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26534,
                                    "end": 26555,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 46
                                      }
                                    },
                                    "name": "registerVisualization"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26556,
                                    "end": 26560,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 51
                                      }
                                    },
                                    "name": "view"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26562,
                                    "end": 26565,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 56
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26585,
                              "end": 26602,
                              "loc": {
                                "start": {
                                  "line": 629,
                                  "column": 16
                                },
                                "end": {
                                  "line": 629,
                                  "column": 33
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26585,
                                "end": 26601,
                                "loc": {
                                  "start": {
                                    "line": 629,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 629,
                                    "column": 32
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26585,
                                  "end": 26596,
                                  "loc": {
                                    "start": {
                                      "line": 629,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 629,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26585,
                                    "end": 26591,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26592,
                                    "end": 26596,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26597,
                                    "end": 26600,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 31
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26619,
                              "end": 26625,
                              "loc": {
                                "start": {
                                  "line": 630,
                                  "column": 16
                                },
                                "end": {
                                  "line": 630,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25176,
                            "end": 25182,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 17
                              },
                              "end": {
                                "line": 601,
                                "column": 23
                              }
                            },
                            "value": "Text",
                            "rawValue": "Text",
                            "raw": "'Text'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26639,
                          "end": 26846,
                          "loc": {
                            "start": {
                              "line": 632,
                              "column": 12
                            },
                            "end": {
                              "line": 636,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 26668,
                              "end": 26708,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 16
                                },
                                "end": {
                                  "line": 633,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26668,
                                "end": 26707,
                                "loc": {
                                  "start": {
                                    "line": 633,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 633,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26668,
                                  "end": 26693,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26668,
                                    "end": 26681,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26668,
                                      "end": 26672,
                                      "loc": {
                                        "start": {
                                          "line": 633,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 633,
                                          "column": 20
                                        }
                                      },
                                      "name": "data"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26673,
                                      "end": 26681,
                                      "loc": {
                                        "start": {
                                          "line": 633,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 633,
                                          "column": 29
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26682,
                                    "end": 26693,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 41
                                      }
                                    },
                                    "name": "applyMatrix"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26694,
                                    "end": 26706,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 54
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26725,
                              "end": 26788,
                              "loc": {
                                "start": {
                                  "line": 634,
                                  "column": 16
                                },
                                "end": {
                                  "line": 634,
                                  "column": 79
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26725,
                                "end": 26787,
                                "loc": {
                                  "start": {
                                    "line": 634,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 634,
                                    "column": 78
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26725,
                                  "end": 26738,
                                  "loc": {
                                    "start": {
                                      "line": 634,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 634,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26725,
                                    "end": 26729,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 20
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26730,
                                    "end": 26738,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 29
                                      }
                                    },
                                    "name": "material"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "NewExpression",
                                  "start": 26741,
                                  "end": 26787,
                                  "loc": {
                                    "start": {
                                      "line": 634,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 634,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 26745,
                                    "end": 26768,
                                    "loc": {
                                      "start": {
                                        "line": 634,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 634,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26745,
                                      "end": 26750,
                                      "loc": {
                                        "start": {
                                          "line": 634,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 634,
                                          "column": 41
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26751,
                                      "end": 26768,
                                      "loc": {
                                        "start": {
                                          "line": 634,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 634,
                                          "column": 59
                                        }
                                      },
                                      "name": "MeshBasicMaterial"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ObjectExpression",
                                      "start": 26769,
                                      "end": 26786,
                                      "loc": {
                                        "start": {
                                          "line": 634,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 634,
                                          "column": 77
                                        }
                                      },
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "start": 26770,
                                          "end": 26785,
                                          "loc": {
                                            "start": {
                                              "line": 634,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 634,
                                              "column": 76
                                            }
                                          },
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "key": {
                                            "type": "Identifier",
                                            "start": 26770,
                                            "end": 26775,
                                            "loc": {
                                              "start": {
                                                "line": 634,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 634,
                                                "column": 66
                                              }
                                            },
                                            "name": "color"
                                          },
                                          "value": {
                                            "type": "Literal",
                                            "start": 26777,
                                            "end": 26785,
                                            "loc": {
                                              "start": {
                                                "line": 634,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 634,
                                                "column": 76
                                              }
                                            },
                                            "value": 8388479,
                                            "rawValue": 8388479,
                                            "raw": "0x7fff7f"
                                          },
                                          "kind": "init"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26805,
                              "end": 26823,
                              "loc": {
                                "start": {
                                  "line": 635,
                                  "column": 16
                                },
                                "end": {
                                  "line": 635,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26805,
                                "end": 26822,
                                "loc": {
                                  "start": {
                                    "line": 635,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 635,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26805,
                                  "end": 26816,
                                  "loc": {
                                    "start": {
                                      "line": 635,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 635,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26805,
                                    "end": 26811,
                                    "loc": {
                                      "start": {
                                        "line": 635,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 635,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26812,
                                    "end": 26816,
                                    "loc": {
                                      "start": {
                                        "line": 635,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 635,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26817,
                                    "end": 26821,
                                    "loc": {
                                      "start": {
                                        "line": 635,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 635,
                                        "column": 32
                                      }
                                    },
                                    "name": "data"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26840,
                              "end": 26846,
                              "loc": {
                                "start": {
                                  "line": 636,
                                  "column": 16
                                },
                                "end": {
                                  "line": 636,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26644,
                            "end": 26650,
                            "loc": {
                              "start": {
                                "line": 632,
                                "column": 17
                              },
                              "end": {
                                "line": 632,
                                "column": 23
                              }
                            },
                            "value": "Line",
                            "rawValue": "Line",
                            "raw": "'Line'"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23662,
                  "end": 23714,
                  "loc": {
                    "start": {
                      "line": 567,
                      "column": 4
                    },
                    "end": {
                      "line": 567,
                      "column": 56
                    }
                  },
                  "range": [
                    23662,
                    23714
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 26868,
              "end": 27142,
              "loc": {
                "start": {
                  "line": 640,
                  "column": 4
                },
                "end": {
                  "line": 648,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26868,
                "end": 26883,
                "loc": {
                  "start": {
                    "line": 640,
                    "column": 4
                  },
                  "end": {
                    "line": 640,
                    "column": 19
                  }
                },
                "name": "showConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 26883,
                "end": 27142,
                "loc": {
                  "start": {
                    "line": 640,
                    "column": 19
                  },
                  "end": {
                    "line": 648,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 26884,
                    "end": 26887,
                    "loc": {
                      "start": {
                        "line": 640,
                        "column": 20
                      },
                      "end": {
                        "line": 640,
                        "column": 23
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 26889,
                  "end": 27142,
                  "loc": {
                    "start": {
                      "line": 640,
                      "column": 25
                    },
                    "end": {
                      "line": 648,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 26899,
                      "end": 26950,
                      "loc": {
                        "start": {
                          "line": 641,
                          "column": 8
                        },
                        "end": {
                          "line": 641,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 26903,
                          "end": 26949,
                          "loc": {
                            "start": {
                              "line": 641,
                              "column": 12
                            },
                            "end": {
                              "line": 641,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 26903,
                            "end": 26914,
                            "loc": {
                              "start": {
                                "line": 641,
                                "column": 12
                              },
                              "end": {
                                "line": 641,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 26917,
                            "end": 26949,
                            "loc": {
                              "start": {
                                "line": 641,
                                "column": 26
                              },
                              "end": {
                                "line": 641,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 26917,
                              "end": 26944,
                              "loc": {
                                "start": {
                                  "line": 641,
                                  "column": 26
                                },
                                "end": {
                                  "line": 641,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 26917,
                                "end": 26921,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26922,
                                "end": 26944,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 26945,
                                "end": 26948,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 26959,
                      "end": 26996,
                      "loc": {
                        "start": {
                          "line": 642,
                          "column": 8
                        },
                        "end": {
                          "line": 642,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 26963,
                        "end": 26987,
                        "loc": {
                          "start": {
                            "line": 642,
                            "column": 12
                          },
                          "end": {
                            "line": 642,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 26963,
                          "end": 26981,
                          "loc": {
                            "start": {
                              "line": 642,
                              "column": 12
                            },
                            "end": {
                              "line": 642,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 26963,
                            "end": 26974,
                            "loc": {
                              "start": {
                                "line": 642,
                                "column": 12
                              },
                              "end": {
                                "line": 642,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26975,
                            "end": 26981,
                            "loc": {
                              "start": {
                                "line": 642,
                                "column": 24
                              },
                              "end": {
                                "line": 642,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 26986,
                          "end": 26987,
                          "loc": {
                            "start": {
                              "line": 642,
                              "column": 35
                            },
                            "end": {
                              "line": 642,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 26989,
                        "end": 26996,
                        "loc": {
                          "start": {
                            "line": 642,
                            "column": 38
                          },
                          "end": {
                            "line": 642,
                            "column": 45
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27006,
                      "end": 27046,
                      "loc": {
                        "start": {
                          "line": 644,
                          "column": 8
                        },
                        "end": {
                          "line": 644,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 27006,
                        "end": 27045,
                        "loc": {
                          "start": {
                            "line": 644,
                            "column": 8
                          },
                          "end": {
                            "line": 644,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 27006,
                          "end": 27038,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 8
                            },
                            "end": {
                              "line": 644,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 27006,
                            "end": 27030,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 8
                              },
                              "end": {
                                "line": 644,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27006,
                              "end": 27009,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 8
                                },
                                "end": {
                                  "line": 644,
                                  "column": 11
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27010,
                              "end": 27030,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 12
                                },
                                "end": {
                                  "line": 644,
                                  "column": 32
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27031,
                            "end": 27038,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 33
                              },
                              "end": {
                                "line": 644,
                                "column": 40
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 27041,
                          "end": 27045,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 43
                            },
                            "end": {
                              "line": 644,
                              "column": 47
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27056,
                      "end": 27084,
                      "loc": {
                        "start": {
                          "line": 646,
                          "column": 8
                        },
                        "end": {
                          "line": 646,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27056,
                        "end": 27083,
                        "loc": {
                          "start": {
                            "line": 646,
                            "column": 8
                          },
                          "end": {
                            "line": 646,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27056,
                          "end": 27078,
                          "loc": {
                            "start": {
                              "line": 646,
                              "column": 8
                            },
                            "end": {
                              "line": 646,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 27056,
                            "end": 27060,
                            "loc": {
                              "start": {
                                "line": 646,
                                "column": 8
                              },
                              "end": {
                                "line": 646,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27061,
                            "end": 27078,
                            "loc": {
                              "start": {
                                "line": 646,
                                "column": 13
                              },
                              "end": {
                                "line": 646,
                                "column": 30
                              }
                            },
                            "name": "updateConstraints"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 27079,
                            "end": 27082,
                            "loc": {
                              "start": {
                                "line": 646,
                                "column": 31
                              },
                              "end": {
                                "line": 646,
                                "column": 34
                              }
                            },
                            "name": "obj"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27093,
                      "end": 27136,
                      "loc": {
                        "start": {
                          "line": 647,
                          "column": 8
                        },
                        "end": {
                          "line": 647,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27093,
                        "end": 27135,
                        "loc": {
                          "start": {
                            "line": 647,
                            "column": 8
                          },
                          "end": {
                            "line": 647,
                            "column": 50
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27093,
                          "end": 27112,
                          "loc": {
                            "start": {
                              "line": 647,
                              "column": 8
                            },
                            "end": {
                              "line": 647,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27093,
                            "end": 27104,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 8
                              },
                              "end": {
                                "line": 647,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27105,
                            "end": 27112,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 20
                              },
                              "end": {
                                "line": 647,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27113,
                            "end": 27134,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 28
                              },
                              "end": {
                                "line": 647,
                                "column": 49
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27113,
                                "end": 27118,
                                "loc": {
                                  "start": {
                                    "line": 647,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 647,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 27122,
                              "end": 27134,
                              "loc": {
                                "start": {
                                  "line": 647,
                                  "column": 37
                                },
                                "end": {
                                  "line": 647,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 27122,
                                "end": 27132,
                                "loc": {
                                  "start": {
                                    "line": 647,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 647,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 27122,
                                  "end": 27127,
                                  "loc": {
                                    "start": {
                                      "line": 647,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 647,
                                      "column": 42
                                    }
                                  },
                                  "name": "child"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27128,
                                  "end": 27132,
                                  "loc": {
                                    "start": {
                                      "line": 647,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 647,
                                      "column": 47
                                    }
                                  },
                                  "name": "show"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27148,
              "end": 27624,
              "loc": {
                "start": {
                  "line": 650,
                  "column": 4
                },
                "end": {
                  "line": 665,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27148,
                "end": 27163,
                "loc": {
                  "start": {
                    "line": 650,
                    "column": 4
                  },
                  "end": {
                    "line": 650,
                    "column": 19
                  }
                },
                "name": "hideConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27163,
                "end": 27624,
                "loc": {
                  "start": {
                    "line": 650,
                    "column": 19
                  },
                  "end": {
                    "line": 665,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 27166,
                  "end": 27624,
                  "loc": {
                    "start": {
                      "line": 650,
                      "column": 22
                    },
                    "end": {
                      "line": 665,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27176,
                      "end": 27224,
                      "loc": {
                        "start": {
                          "line": 651,
                          "column": 8
                        },
                        "end": {
                          "line": 651,
                          "column": 56
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27180,
                          "end": 27223,
                          "loc": {
                            "start": {
                              "line": 651,
                              "column": 12
                            },
                            "end": {
                              "line": 651,
                              "column": 55
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27180,
                            "end": 27191,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 12
                              },
                              "end": {
                                "line": 651,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27194,
                            "end": 27223,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 26
                              },
                              "end": {
                                "line": 651,
                                "column": 55
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27194,
                              "end": 27221,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 26
                                },
                                "end": {
                                  "line": 651,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27194,
                                "end": 27198,
                                "loc": {
                                  "start": {
                                    "line": 651,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 651,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27199,
                                "end": 27221,
                                "loc": {
                                  "start": {
                                    "line": 651,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 651,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27234,
                      "end": 27367,
                      "loc": {
                        "start": {
                          "line": 653,
                          "column": 8
                        },
                        "end": {
                          "line": 656,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27234,
                        "end": 27366,
                        "loc": {
                          "start": {
                            "line": 653,
                            "column": 8
                          },
                          "end": {
                            "line": 656,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27234,
                          "end": 27253,
                          "loc": {
                            "start": {
                              "line": 653,
                              "column": 8
                            },
                            "end": {
                              "line": 653,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27234,
                            "end": 27245,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 8
                              },
                              "end": {
                                "line": 653,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27246,
                            "end": 27253,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 20
                              },
                              "end": {
                                "line": 653,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27254,
                            "end": 27365,
                            "loc": {
                              "start": {
                                "line": 653,
                                "column": 28
                              },
                              "end": {
                                "line": 656,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27254,
                                "end": 27259,
                                "loc": {
                                  "start": {
                                    "line": 653,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 653,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27263,
                              "end": 27365,
                              "loc": {
                                "start": {
                                  "line": 653,
                                  "column": 37
                                },
                                "end": {
                                  "line": 656,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27277,
                                  "end": 27329,
                                  "loc": {
                                    "start": {
                                      "line": 654,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 654,
                                      "column": 64
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27277,
                                    "end": 27328,
                                    "loc": {
                                      "start": {
                                        "line": 654,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 654,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27277,
                                      "end": 27295,
                                      "loc": {
                                        "start": {
                                          "line": 654,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 654,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 27277,
                                        "end": 27287,
                                        "loc": {
                                          "start": {
                                            "line": 654,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 654,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 27277,
                                          "end": 27282,
                                          "loc": {
                                            "start": {
                                              "line": 654,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 654,
                                              "column": 17
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 27283,
                                          "end": 27287,
                                          "loc": {
                                            "start": {
                                              "line": 654,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 654,
                                              "column": 22
                                            }
                                          },
                                          "name": "args"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27288,
                                        "end": 27295,
                                        "loc": {
                                          "start": {
                                            "line": 654,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 654,
                                            "column": 30
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 27296,
                                        "end": 27327,
                                        "loc": {
                                          "start": {
                                            "line": 654,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 654,
                                            "column": 62
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27296,
                                            "end": 27299,
                                            "loc": {
                                              "start": {
                                                "line": 654,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 654,
                                                "column": 34
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27303,
                                          "end": 27327,
                                          "loc": {
                                            "start": {
                                              "line": 654,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 654,
                                              "column": 62
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 27305,
                                              "end": 27325,
                                              "loc": {
                                                "start": {
                                                  "line": 654,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 654,
                                                  "column": 60
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 27305,
                                                "end": 27324,
                                                "loc": {
                                                  "start": {
                                                    "line": 654,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 654,
                                                    "column": 59
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 27305,
                                                  "end": 27316,
                                                  "loc": {
                                                    "start": {
                                                      "line": 654,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 654,
                                                      "column": 51
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 27305,
                                                    "end": 27308,
                                                    "loc": {
                                                      "start": {
                                                        "line": 654,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 654,
                                                        "column": 43
                                                      }
                                                    },
                                                    "name": "arg"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 27309,
                                                    "end": 27316,
                                                    "loc": {
                                                      "start": {
                                                        "line": 654,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 654,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "hovered"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 27319,
                                                  "end": 27324,
                                                  "loc": {
                                                    "start": {
                                                      "line": 654,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 654,
                                                      "column": 59
                                                    }
                                                  },
                                                  "value": false,
                                                  "rawValue": false,
                                                  "raw": "false"
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27342,
                                  "end": 27355,
                                  "loc": {
                                    "start": {
                                      "line": 655,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 655,
                                      "column": 25
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27342,
                                    "end": 27354,
                                    "loc": {
                                      "start": {
                                        "line": 655,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 655,
                                        "column": 24
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27342,
                                      "end": 27352,
                                      "loc": {
                                        "start": {
                                          "line": 655,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 655,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27342,
                                        "end": 27347,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 17
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27348,
                                        "end": 27352,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 22
                                          }
                                        },
                                        "name": "hide"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27377,
                      "end": 27618,
                      "loc": {
                        "start": {
                          "line": 658,
                          "column": 8
                        },
                        "end": {
                          "line": 664,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27377,
                        "end": 27617,
                        "loc": {
                          "start": {
                            "line": 658,
                            "column": 8
                          },
                          "end": {
                            "line": 664,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27377,
                          "end": 27410,
                          "loc": {
                            "start": {
                              "line": 658,
                              "column": 8
                            },
                            "end": {
                              "line": 658,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 27377,
                            "end": 27402,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 8
                              },
                              "end": {
                                "line": 658,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27377,
                              "end": 27400,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 8
                                },
                                "end": {
                                  "line": 658,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27377,
                                "end": 27381,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27382,
                                "end": 27400,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27403,
                            "end": 27410,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 34
                              },
                              "end": {
                                "line": 658,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27411,
                            "end": 27616,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 42
                              },
                              "end": {
                                "line": 664,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27411,
                                "end": 27414,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27418,
                              "end": 27616,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 49
                                },
                                "end": {
                                  "line": 664,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27432,
                                  "end": 27605,
                                  "loc": {
                                    "start": {
                                      "line": 659,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 662,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27432,
                                    "end": 27604,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 662,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27432,
                                      "end": 27461,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27432,
                                        "end": 27438,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27439,
                                        "end": 27461,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 27462,
                                        "end": 27465,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 27467,
                                        "end": 27603,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 662,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27476,
                                            "end": 27479,
                                            "loc": {
                                              "start": {
                                                "line": 659,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 659,
                                                "column": 59
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27480,
                                          "end": 27603,
                                          "loc": {
                                            "start": {
                                              "line": 659,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 662,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 27498,
                                              "end": 27589,
                                              "loc": {
                                                "start": {
                                                  "line": 660,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 661,
                                                  "column": 61
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 27502,
                                                "end": 27526,
                                                "loc": {
                                                  "start": {
                                                    "line": 660,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 660,
                                                    "column": 44
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 27502,
                                                  "end": 27505,
                                                  "loc": {
                                                    "start": {
                                                      "line": 660,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 660,
                                                      "column": 23
                                                    }
                                                  },
                                                  "name": "arg"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 27506,
                                                  "end": 27526,
                                                  "loc": {
                                                    "start": {
                                                      "line": 660,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 660,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "constraintsSubstrate"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 27548,
                                                "end": 27589,
                                                "loc": {
                                                  "start": {
                                                    "line": 661,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 661,
                                                    "column": 61
                                                  }
                                                },
                                                "expression": {
                                                  "type": "AssignmentExpression",
                                                  "start": 27548,
                                                  "end": 27588,
                                                  "loc": {
                                                    "start": {
                                                      "line": 661,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 661,
                                                      "column": 60
                                                    }
                                                  },
                                                  "operator": "=",
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 27548,
                                                    "end": 27580,
                                                    "loc": {
                                                      "start": {
                                                        "line": 661,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 661,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 27548,
                                                      "end": 27572,
                                                      "loc": {
                                                        "start": {
                                                          "line": 661,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 661,
                                                          "column": 44
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 27548,
                                                        "end": 27551,
                                                        "loc": {
                                                          "start": {
                                                            "line": 661,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 661,
                                                            "column": 23
                                                          }
                                                        },
                                                        "name": "arg"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 27552,
                                                        "end": 27572,
                                                        "loc": {
                                                          "start": {
                                                            "line": 661,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 661,
                                                            "column": 44
                                                          }
                                                        },
                                                        "name": "constraintsSubstrate"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 27573,
                                                      "end": 27580,
                                                      "loc": {
                                                        "start": {
                                                          "line": 661,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 661,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "visible"
                                                    },
                                                    "computed": false
                                                  },
                                                  "right": {
                                                    "type": "Literal",
                                                    "start": 27583,
                                                    "end": 27588,
                                                    "loc": {
                                                      "start": {
                                                        "line": 661,
                                                        "column": 55
                                                      },
                                                      "end": {
                                                        "line": 661,
                                                        "column": 60
                                                      }
                                                    },
                                                    "value": false,
                                                    "rawValue": false,
                                                    "raw": "false"
                                                  }
                                                }
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27630,
              "end": 28558,
              "loc": {
                "start": {
                  "line": 667,
                  "column": 4
                },
                "end": {
                  "line": 688,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27630,
                "end": 27647,
                "loc": {
                  "start": {
                    "line": 667,
                    "column": 4
                  },
                  "end": {
                    "line": 667,
                    "column": 21
                  }
                },
                "name": "updateConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27647,
                "end": 28558,
                "loc": {
                  "start": {
                    "line": 667,
                    "column": 21
                  },
                  "end": {
                    "line": 688,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 27648,
                    "end": 27651,
                    "loc": {
                      "start": {
                        "line": 667,
                        "column": 22
                      },
                      "end": {
                        "line": 667,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 27653,
                  "end": 28558,
                  "loc": {
                    "start": {
                      "line": 667,
                      "column": 27
                    },
                    "end": {
                      "line": 688,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27663,
                      "end": 27704,
                      "loc": {
                        "start": {
                          "line": 668,
                          "column": 8
                        },
                        "end": {
                          "line": 668,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27667,
                          "end": 27703,
                          "loc": {
                            "start": {
                              "line": 668,
                              "column": 12
                            },
                            "end": {
                              "line": 668,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27667,
                            "end": 27676,
                            "loc": {
                              "start": {
                                "line": 668,
                                "column": 12
                              },
                              "end": {
                                "line": 668,
                                "column": 21
                              }
                            },
                            "name": "substrate"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27679,
                            "end": 27703,
                            "loc": {
                              "start": {
                                "line": 668,
                                "column": 24
                              },
                              "end": {
                                "line": 668,
                                "column": 48
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27679,
                              "end": 27682,
                              "loc": {
                                "start": {
                                  "line": 668,
                                  "column": 24
                                },
                                "end": {
                                  "line": 668,
                                  "column": 27
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27683,
                              "end": 27703,
                              "loc": {
                                "start": {
                                  "line": 668,
                                  "column": 28
                                },
                                "end": {
                                  "line": 668,
                                  "column": 48
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27713,
                      "end": 27764,
                      "loc": {
                        "start": {
                          "line": 669,
                          "column": 8
                        },
                        "end": {
                          "line": 669,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27717,
                          "end": 27763,
                          "loc": {
                            "start": {
                              "line": 669,
                              "column": 12
                            },
                            "end": {
                              "line": 669,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27717,
                            "end": 27728,
                            "loc": {
                              "start": {
                                "line": 669,
                                "column": 12
                              },
                              "end": {
                                "line": 669,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27731,
                            "end": 27763,
                            "loc": {
                              "start": {
                                "line": 669,
                                "column": 26
                              },
                              "end": {
                                "line": 669,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27731,
                              "end": 27758,
                              "loc": {
                                "start": {
                                  "line": 669,
                                  "column": 26
                                },
                                "end": {
                                  "line": 669,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27731,
                                "end": 27735,
                                "loc": {
                                  "start": {
                                    "line": 669,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 669,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27736,
                                "end": 27758,
                                "loc": {
                                  "start": {
                                    "line": 669,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 669,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 27759,
                                "end": 27762,
                                "loc": {
                                  "start": {
                                    "line": 669,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 669,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 27774,
                      "end": 27951,
                      "loc": {
                        "start": {
                          "line": 671,
                          "column": 8
                        },
                        "end": {
                          "line": 675,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 27778,
                        "end": 27802,
                        "loc": {
                          "start": {
                            "line": 671,
                            "column": 12
                          },
                          "end": {
                            "line": 671,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 27778,
                          "end": 27796,
                          "loc": {
                            "start": {
                              "line": 671,
                              "column": 12
                            },
                            "end": {
                              "line": 671,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27778,
                            "end": 27789,
                            "loc": {
                              "start": {
                                "line": 671,
                                "column": 12
                              },
                              "end": {
                                "line": 671,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27790,
                            "end": 27796,
                            "loc": {
                              "start": {
                                "line": 671,
                                "column": 24
                              },
                              "end": {
                                "line": 671,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 27801,
                          "end": 27802,
                          "loc": {
                            "start": {
                              "line": 671,
                              "column": 35
                            },
                            "end": {
                              "line": 671,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 27804,
                        "end": 27951,
                        "loc": {
                          "start": {
                            "line": 671,
                            "column": 38
                          },
                          "end": {
                            "line": 675,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 27818,
                            "end": 27859,
                            "loc": {
                              "start": {
                                "line": 672,
                                "column": 12
                              },
                              "end": {
                                "line": 672,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 27818,
                              "end": 27858,
                              "loc": {
                                "start": {
                                  "line": 672,
                                  "column": 12
                                },
                                "end": {
                                  "line": 672,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 27818,
                                "end": 27850,
                                "loc": {
                                  "start": {
                                    "line": 672,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 672,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27818,
                                  "end": 27842,
                                  "loc": {
                                    "start": {
                                      "line": 672,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 672,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27818,
                                    "end": 27821,
                                    "loc": {
                                      "start": {
                                        "line": 672,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 672,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27822,
                                    "end": 27842,
                                    "loc": {
                                      "start": {
                                        "line": 672,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 672,
                                        "column": 36
                                      }
                                    },
                                    "name": "constraintsSubstrate"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27843,
                                  "end": 27850,
                                  "loc": {
                                    "start": {
                                      "line": 672,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 672,
                                      "column": 44
                                    }
                                  },
                                  "name": "visible"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 27853,
                                "end": 27858,
                                "loc": {
                                  "start": {
                                    "line": 672,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 672,
                                    "column": 52
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 27872,
                            "end": 27919,
                            "loc": {
                              "start": {
                                "line": 673,
                                "column": 12
                              },
                              "end": {
                                "line": 673,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 27872,
                              "end": 27918,
                              "loc": {
                                "start": {
                                  "line": 673,
                                  "column": 12
                                },
                                "end": {
                                  "line": 673,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 27872,
                                "end": 27892,
                                "loc": {
                                  "start": {
                                    "line": 673,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 673,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27872,
                                  "end": 27884,
                                  "loc": {
                                    "start": {
                                      "line": 673,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 673,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27872,
                                    "end": 27875,
                                    "loc": {
                                      "start": {
                                        "line": 673,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 673,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27876,
                                    "end": 27884,
                                    "loc": {
                                      "start": {
                                        "line": 673,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 673,
                                        "column": 24
                                      }
                                    },
                                    "name": "interact"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27885,
                                  "end": 27892,
                                  "loc": {
                                    "start": {
                                      "line": 673,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 673,
                                      "column": 32
                                    }
                                  },
                                  "name": "unhover"
                                },
                                "computed": false
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 27896,
                                "end": 27918,
                                "loc": {
                                  "start": {
                                    "line": 673,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 673,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27896,
                                  "end": 27916,
                                  "loc": {
                                    "start": {
                                      "line": 673,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 673,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 27896,
                                    "end": 27908,
                                    "loc": {
                                      "start": {
                                        "line": 673,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 673,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27896,
                                      "end": 27899,
                                      "loc": {
                                        "start": {
                                          "line": 673,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 673,
                                          "column": 39
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27900,
                                      "end": 27908,
                                      "loc": {
                                        "start": {
                                          "line": 673,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 673,
                                          "column": 48
                                        }
                                      },
                                      "name": "interact"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27909,
                                    "end": 27916,
                                    "loc": {
                                      "start": {
                                        "line": 673,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 673,
                                        "column": 56
                                      }
                                    },
                                    "name": "unhover"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 27932,
                            "end": 27941,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 12
                              },
                              "end": {
                                "line": 674,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Literal",
                              "start": 27939,
                              "end": 27940,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 19
                                },
                                "end": {
                                  "line": 674,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27961,
                      "end": 27990,
                      "loc": {
                        "start": {
                          "line": 677,
                          "column": 8
                        },
                        "end": {
                          "line": 677,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27965,
                          "end": 27989,
                          "loc": {
                            "start": {
                              "line": 677,
                              "column": 12
                            },
                            "end": {
                              "line": 677,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27965,
                            "end": 27968,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 12
                              },
                              "end": {
                                "line": 677,
                                "column": 15
                              }
                            },
                            "name": "len"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27971,
                            "end": 27989,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 18
                              },
                              "end": {
                                "line": 677,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27971,
                              "end": 27982,
                              "loc": {
                                "start": {
                                  "line": 677,
                                  "column": 18
                                },
                                "end": {
                                  "line": 677,
                                  "column": 29
                                }
                              },
                              "name": "constraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27983,
                              "end": 27989,
                              "loc": {
                                "start": {
                                  "line": 677,
                                  "column": 30
                                },
                                "end": {
                                  "line": 677,
                                  "column": 36
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27999,
                      "end": 28039,
                      "loc": {
                        "start": {
                          "line": 678,
                          "column": 8
                        },
                        "end": {
                          "line": 678,
                          "column": 48
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28003,
                          "end": 28038,
                          "loc": {
                            "start": {
                              "line": 678,
                              "column": 12
                            },
                            "end": {
                              "line": 678,
                              "column": 47
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28003,
                            "end": 28008,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 12
                              },
                              "end": {
                                "line": 678,
                                "column": 17
                              }
                            },
                            "name": "scale"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 28011,
                            "end": 28038,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 20
                              },
                              "end": {
                                "line": 678,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 28011,
                              "end": 28036,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 20
                                },
                                "end": {
                                  "line": 678,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28011,
                                "end": 28030,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28011,
                                  "end": 28025,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28011,
                                    "end": 28022,
                                    "loc": {
                                      "start": {
                                        "line": 678,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 678,
                                        "column": 31
                                      }
                                    },
                                    "name": "constraints"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 28023,
                                    "end": 28024,
                                    "loc": {
                                      "start": {
                                        "line": 678,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 678,
                                        "column": 33
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28026,
                                  "end": 28030,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 39
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28031,
                                "end": 28036,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 45
                                  }
                                },
                                "name": "scale"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28037,
                              "end": 28038,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 46
                                },
                                "end": {
                                  "line": 678,
                                  "column": 47
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28048,
                      "end": 28071,
                      "loc": {
                        "start": {
                          "line": 679,
                          "column": 8
                        },
                        "end": {
                          "line": 679,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28052,
                          "end": 28070,
                          "loc": {
                            "start": {
                              "line": 679,
                              "column": 12
                            },
                            "end": {
                              "line": 679,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28052,
                            "end": 28056,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 12
                              },
                              "end": {
                                "line": 679,
                                "column": 16
                              }
                            },
                            "name": "size"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28059,
                            "end": 28070,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 19
                              },
                              "end": {
                                "line": 679,
                                "column": 30
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 28059,
                              "end": 28062,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 19
                                },
                                "end": {
                                  "line": 679,
                                  "column": 22
                                }
                              },
                              "value": 1.2,
                              "rawValue": 1.2,
                              "raw": "1.2"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 28065,
                              "end": 28070,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 25
                                },
                                "end": {
                                  "line": 679,
                                  "column": 30
                                }
                              },
                              "name": "scale"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28080,
                      "end": 28152,
                      "loc": {
                        "start": {
                          "line": 680,
                          "column": 8
                        },
                        "end": {
                          "line": 680,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28080,
                        "end": 28151,
                        "loc": {
                          "start": {
                            "line": 680,
                            "column": 8
                          },
                          "end": {
                            "line": 680,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28080,
                          "end": 28099,
                          "loc": {
                            "start": {
                              "line": 680,
                              "column": 8
                            },
                            "end": {
                              "line": 680,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28080,
                            "end": 28095,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 8
                              },
                              "end": {
                                "line": 680,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28080,
                              "end": 28089,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 8
                                },
                                "end": {
                                  "line": 680,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28090,
                              "end": 28095,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 18
                                },
                                "end": {
                                  "line": 680,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28096,
                            "end": 28099,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 24
                              },
                              "end": {
                                "line": 680,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 28100,
                            "end": 28125,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 28
                              },
                              "end": {
                                "line": 680,
                                "column": 53
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 28100,
                              "end": 28104,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 28
                                },
                                "end": {
                                  "line": 680,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28107,
                              "end": 28125,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 35
                                },
                                "end": {
                                  "line": 680,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28107,
                                "end": 28118,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 46
                                  }
                                },
                                "name": "constraints"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28119,
                                "end": 28125,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 53
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 28127,
                            "end": 28131,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 55
                              },
                              "end": {
                                "line": 680,
                                "column": 59
                              }
                            },
                            "name": "size"
                          },
                          {
                            "type": "CallExpression",
                            "start": 28133,
                            "end": 28150,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 61
                              },
                              "end": {
                                "line": 680,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28133,
                              "end": 28141,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 61
                                },
                                "end": {
                                  "line": 680,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28133,
                                "end": 28137,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 65
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28138,
                                "end": 28141,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 69
                                  }
                                },
                                "name": "min"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 28142,
                                "end": 28146,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 74
                                  }
                                },
                                "name": "size"
                              },
                              {
                                "type": "Literal",
                                "start": 28148,
                                "end": 28149,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 77
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28161,
                      "end": 28221,
                      "loc": {
                        "start": {
                          "line": 681,
                          "column": 8
                        },
                        "end": {
                          "line": 681,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28165,
                          "end": 28220,
                          "loc": {
                            "start": {
                              "line": 681,
                              "column": 12
                            },
                            "end": {
                              "line": 681,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28165,
                            "end": 28168,
                            "loc": {
                              "start": {
                                "line": 681,
                                "column": 12
                              },
                              "end": {
                                "line": 681,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 28171,
                            "end": 28220,
                            "loc": {
                              "start": {
                                "line": 681,
                                "column": 18
                              },
                              "end": {
                                "line": 681,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28171,
                              "end": 28195,
                              "loc": {
                                "start": {
                                  "line": 681,
                                  "column": 18
                                },
                                "end": {
                                  "line": 681,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28171,
                                "end": 28174,
                                "loc": {
                                  "start": {
                                    "line": 681,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 681,
                                    "column": 21
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28175,
                                "end": 28195,
                                "loc": {
                                  "start": {
                                    "line": 681,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 681,
                                    "column": 42
                                  }
                                },
                                "name": "getSubstratePosition"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 28196,
                                "end": 28213,
                                "loc": {
                                  "start": {
                                    "line": 681,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 681,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28196,
                                  "end": 28211,
                                  "loc": {
                                    "start": {
                                      "line": 681,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 681,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28196,
                                    "end": 28205,
                                    "loc": {
                                      "start": {
                                        "line": 681,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 681,
                                        "column": 52
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28206,
                                    "end": 28211,
                                    "loc": {
                                      "start": {
                                        "line": 681,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 681,
                                        "column": 58
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28212,
                                  "end": 28213,
                                  "loc": {
                                    "start": {
                                      "line": 681,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 681,
                                      "column": 60
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Identifier",
                                "start": 28215,
                                "end": 28219,
                                "loc": {
                                  "start": {
                                    "line": 681,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 681,
                                    "column": 66
                                  }
                                },
                                "name": "size"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28230,
                      "end": 28271,
                      "loc": {
                        "start": {
                          "line": 682,
                          "column": 8
                        },
                        "end": {
                          "line": 682,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28230,
                        "end": 28270,
                        "loc": {
                          "start": {
                            "line": 682,
                            "column": 8
                          },
                          "end": {
                            "line": 682,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28230,
                          "end": 28252,
                          "loc": {
                            "start": {
                              "line": 682,
                              "column": 8
                            },
                            "end": {
                              "line": 682,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28230,
                            "end": 28248,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 8
                              },
                              "end": {
                                "line": 682,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28230,
                              "end": 28239,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 8
                                },
                                "end": {
                                  "line": 682,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28240,
                              "end": 28248,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 18
                                },
                                "end": {
                                  "line": 682,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28249,
                            "end": 28252,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 27
                              },
                              "end": {
                                "line": 682,
                                "column": 30
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 28253,
                            "end": 28258,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 31
                              },
                              "end": {
                                "line": 682,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28253,
                              "end": 28256,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 31
                                },
                                "end": {
                                  "line": 682,
                                  "column": 34
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28257,
                              "end": 28258,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 35
                                },
                                "end": {
                                  "line": 682,
                                  "column": 36
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 28260,
                            "end": 28265,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 38
                              },
                              "end": {
                                "line": 682,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28260,
                              "end": 28263,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 38
                                },
                                "end": {
                                  "line": 682,
                                  "column": 41
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28264,
                              "end": 28265,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 42
                                },
                                "end": {
                                  "line": 682,
                                  "column": 43
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 28267,
                            "end": 28269,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 45
                              },
                              "end": {
                                "line": 682,
                                "column": 47
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 28268,
                              "end": 28269,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 46
                                },
                                "end": {
                                  "line": 682,
                                  "column": 47
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28280,
                      "end": 28358,
                      "loc": {
                        "start": {
                          "line": 683,
                          "column": 8
                        },
                        "end": {
                          "line": 683,
                          "column": 86
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28284,
                          "end": 28357,
                          "loc": {
                            "start": {
                              "line": 683,
                              "column": 12
                            },
                            "end": {
                              "line": 683,
                              "column": 85
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28284,
                            "end": 28293,
                            "loc": {
                              "start": {
                                "line": 683,
                                "column": 12
                              },
                              "end": {
                                "line": 683,
                                "column": 21
                              }
                            },
                            "name": "mostLeftX"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28296,
                            "end": 28357,
                            "loc": {
                              "start": {
                                "line": 683,
                                "column": 24
                              },
                              "end": {
                                "line": 683,
                                "column": 85
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 28296,
                              "end": 28333,
                              "loc": {
                                "start": {
                                  "line": 683,
                                  "column": 24
                                },
                                "end": {
                                  "line": 683,
                                  "column": 61
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28296,
                                "end": 28316,
                                "loc": {
                                  "start": {
                                    "line": 683,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 683,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28296,
                                  "end": 28314,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28296,
                                    "end": 28305,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 33
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28306,
                                    "end": 28314,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 42
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28315,
                                  "end": 28316,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 44
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 28319,
                                "end": 28333,
                                "loc": {
                                  "start": {
                                    "line": 683,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 683,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28319,
                                  "end": 28331,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28319,
                                    "end": 28322,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 50
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28323,
                                    "end": 28331,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 59
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28332,
                                  "end": 28333,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 61
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              }
                            },
                            "operator": "-",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 28336,
                              "end": 28357,
                              "loc": {
                                "start": {
                                  "line": 683,
                                  "column": 64
                                },
                                "end": {
                                  "line": 683,
                                  "column": 85
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28336,
                                "end": 28353,
                                "loc": {
                                  "start": {
                                    "line": 683,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 683,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28336,
                                  "end": 28351,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28336,
                                    "end": 28345,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 73
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28346,
                                    "end": 28351,
                                    "loc": {
                                      "start": {
                                        "line": 683,
                                        "column": 74
                                      },
                                      "end": {
                                        "line": 683,
                                        "column": 79
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28352,
                                  "end": 28353,
                                  "loc": {
                                    "start": {
                                      "line": 683,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 683,
                                      "column": 81
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 28356,
                                "end": 28357,
                                "loc": {
                                  "start": {
                                    "line": 683,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 683,
                                    "column": 85
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28367,
                      "end": 28419,
                      "loc": {
                        "start": {
                          "line": 684,
                          "column": 8
                        },
                        "end": {
                          "line": 684,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28371,
                          "end": 28418,
                          "loc": {
                            "start": {
                              "line": 684,
                              "column": 12
                            },
                            "end": {
                              "line": 684,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28371,
                            "end": 28378,
                            "loc": {
                              "start": {
                                "line": 684,
                                "column": 12
                              },
                              "end": {
                                "line": 684,
                                "column": 19
                              }
                            },
                            "name": "middleY"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28381,
                            "end": 28418,
                            "loc": {
                              "start": {
                                "line": 684,
                                "column": 22
                              },
                              "end": {
                                "line": 684,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 28381,
                              "end": 28401,
                              "loc": {
                                "start": {
                                  "line": 684,
                                  "column": 22
                                },
                                "end": {
                                  "line": 684,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28381,
                                "end": 28399,
                                "loc": {
                                  "start": {
                                    "line": 684,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 684,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28381,
                                  "end": 28390,
                                  "loc": {
                                    "start": {
                                      "line": 684,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 684,
                                      "column": 31
                                    }
                                  },
                                  "name": "substrate"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28391,
                                  "end": 28399,
                                  "loc": {
                                    "start": {
                                      "line": 684,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 684,
                                      "column": 40
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28400,
                                "end": 28401,
                                "loc": {
                                  "start": {
                                    "line": 684,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 684,
                                    "column": 42
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            "operator": "+",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28404,
                              "end": 28418,
                              "loc": {
                                "start": {
                                  "line": 684,
                                  "column": 45
                                },
                                "end": {
                                  "line": 684,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28404,
                                "end": 28416,
                                "loc": {
                                  "start": {
                                    "line": 684,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 684,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28404,
                                  "end": 28407,
                                  "loc": {
                                    "start": {
                                      "line": 684,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 684,
                                      "column": 48
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28408,
                                  "end": 28416,
                                  "loc": {
                                    "start": {
                                      "line": 684,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 684,
                                      "column": 57
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28417,
                                "end": 28418,
                                "loc": {
                                  "start": {
                                    "line": 684,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 684,
                                    "column": 59
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForStatement",
                      "start": 28428,
                      "end": 28552,
                      "loc": {
                        "start": {
                          "line": 685,
                          "column": 8
                        },
                        "end": {
                          "line": 687,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 28433,
                        "end": 28442,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 13
                          },
                          "end": {
                            "line": 685,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28437,
                            "end": 28442,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 17
                              },
                              "end": {
                                "line": 685,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28437,
                              "end": 28438,
                              "loc": {
                                "start": {
                                  "line": 685,
                                  "column": 17
                                },
                                "end": {
                                  "line": 685,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 28441,
                              "end": 28442,
                              "loc": {
                                "start": {
                                  "line": 685,
                                  "column": 21
                                },
                                "end": {
                                  "line": 685,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 28444,
                        "end": 28451,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 24
                          },
                          "end": {
                            "line": 685,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 28444,
                          "end": 28445,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 24
                            },
                            "end": {
                              "line": 685,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 28448,
                          "end": 28451,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 28
                            },
                            "end": {
                              "line": 685,
                              "column": 31
                            }
                          },
                          "name": "len"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 28453,
                        "end": 28456,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 33
                          },
                          "end": {
                            "line": 685,
                            "column": 36
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 28455,
                          "end": 28456,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 35
                            },
                            "end": {
                              "line": 685,
                              "column": 36
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 28458,
                        "end": 28552,
                        "loc": {
                          "start": {
                            "line": 685,
                            "column": 38
                          },
                          "end": {
                            "line": 687,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 28472,
                            "end": 28542,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 12
                              },
                              "end": {
                                "line": 686,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 28472,
                              "end": 28541,
                              "loc": {
                                "start": {
                                  "line": 686,
                                  "column": 12
                                },
                                "end": {
                                  "line": 686,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28472,
                                "end": 28499,
                                "loc": {
                                  "start": {
                                    "line": 686,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 686,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28472,
                                  "end": 28495,
                                  "loc": {
                                    "start": {
                                      "line": 686,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 686,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 28472,
                                    "end": 28486,
                                    "loc": {
                                      "start": {
                                        "line": 686,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 686,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 28472,
                                      "end": 28483,
                                      "loc": {
                                        "start": {
                                          "line": 686,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 686,
                                          "column": 23
                                        }
                                      },
                                      "name": "constraints"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 28484,
                                      "end": 28485,
                                      "loc": {
                                        "start": {
                                          "line": 686,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 686,
                                          "column": 25
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28487,
                                    "end": 28495,
                                    "loc": {
                                      "start": {
                                        "line": 686,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 686,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28496,
                                  "end": 28499,
                                  "loc": {
                                    "start": {
                                      "line": 686,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 686,
                                      "column": 39
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 28500,
                                  "end": 28528,
                                  "loc": {
                                    "start": {
                                      "line": 686,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 686,
                                      "column": 68
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 28500,
                                    "end": 28509,
                                    "loc": {
                                      "start": {
                                        "line": 686,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 686,
                                        "column": 49
                                      }
                                    },
                                    "name": "mostLeftX"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 28512,
                                    "end": 28528,
                                    "loc": {
                                      "start": {
                                        "line": 686,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 686,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 28513,
                                      "end": 28520,
                                      "loc": {
                                        "start": {
                                          "line": 686,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 686,
                                          "column": 60
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 28513,
                                        "end": 28514,
                                        "loc": {
                                          "start": {
                                            "line": 686,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 686,
                                            "column": 54
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 28517,
                                        "end": 28520,
                                        "loc": {
                                          "start": {
                                            "line": 686,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 686,
                                            "column": 60
                                          }
                                        },
                                        "value": 0.5,
                                        "rawValue": 0.5,
                                        "raw": "0.5"
                                      },
                                      "parenthesizedExpression": true
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 28524,
                                      "end": 28528,
                                      "loc": {
                                        "start": {
                                          "line": 686,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 686,
                                          "column": 68
                                        }
                                      },
                                      "name": "size"
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 28530,
                                  "end": 28537,
                                  "loc": {
                                    "start": {
                                      "line": 686,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 686,
                                      "column": 77
                                    }
                                  },
                                  "name": "middleY"
                                },
                                {
                                  "type": "Literal",
                                  "start": 28539,
                                  "end": 28540,
                                  "loc": {
                                    "start": {
                                      "line": 686,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 686,
                                      "column": 80
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28564,
              "end": 28739,
              "loc": {
                "start": {
                  "line": 690,
                  "column": 4
                },
                "end": {
                  "line": 695,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28564,
                "end": 28572,
                "loc": {
                  "start": {
                    "line": 690,
                    "column": 4
                  },
                  "end": {
                    "line": 690,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28572,
                "end": 28739,
                "loc": {
                  "start": {
                    "line": 690,
                    "column": 12
                  },
                  "end": {
                    "line": 695,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 28575,
                  "end": 28739,
                  "loc": {
                    "start": {
                      "line": 690,
                      "column": 15
                    },
                    "end": {
                      "line": 695,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 28585,
                      "end": 28607,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 8
                        },
                        "end": {
                          "line": 691,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28589,
                          "end": 28606,
                          "loc": {
                            "start": {
                              "line": 691,
                              "column": 12
                            },
                            "end": {
                              "line": 691,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28589,
                            "end": 28594,
                            "loc": {
                              "start": {
                                "line": 691,
                                "column": 12
                              },
                              "end": {
                                "line": 691,
                                "column": 17
                              }
                            },
                            "name": "state"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28597,
                            "end": 28606,
                            "loc": {
                              "start": {
                                "line": 691,
                                "column": 20
                              },
                              "end": {
                                "line": 691,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28601,
                              "end": 28604,
                              "loc": {
                                "start": {
                                  "line": 691,
                                  "column": 24
                                },
                                "end": {
                                  "line": 691,
                                  "column": 27
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 28616,
                      "end": 28711,
                      "loc": {
                        "start": {
                          "line": 692,
                          "column": 8
                        },
                        "end": {
                          "line": 693,
                          "column": 49
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 28621,
                        "end": 28631,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 13
                          },
                          "end": {
                            "line": 692,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28625,
                            "end": 28631,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 17
                              },
                              "end": {
                                "line": 692,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28625,
                              "end": 28631,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 17
                                },
                                "end": {
                                  "line": 692,
                                  "column": 23
                                }
                              },
                              "name": "object"
                            },
                            "init": null
                          }
                        ],
                        "kind": "var"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 28635,
                        "end": 28660,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 27
                          },
                          "end": {
                            "line": 692,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28635,
                          "end": 28658,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 27
                            },
                            "end": {
                              "line": 692,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 28635,
                            "end": 28639,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 27
                              },
                              "end": {
                                "line": 692,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28640,
                            "end": 28658,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 32
                              },
                              "end": {
                                "line": 692,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 28674,
                        "end": 28711,
                        "loc": {
                          "start": {
                            "line": 693,
                            "column": 12
                          },
                          "end": {
                            "line": 693,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 28674,
                          "end": 28710,
                          "loc": {
                            "start": {
                              "line": 693,
                              "column": 12
                            },
                            "end": {
                              "line": 693,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 28674,
                            "end": 28683,
                            "loc": {
                              "start": {
                                "line": 693,
                                "column": 12
                              },
                              "end": {
                                "line": 693,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28674,
                              "end": 28679,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 12
                                },
                                "end": {
                                  "line": 693,
                                  "column": 17
                                }
                              },
                              "name": "state"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28680,
                              "end": 28683,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 18
                                },
                                "end": {
                                  "line": 693,
                                  "column": 21
                                }
                              },
                              "name": "set"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 28684,
                              "end": 28690,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 22
                                },
                                "end": {
                                  "line": 693,
                                  "column": 28
                                }
                              },
                              "name": "object"
                            },
                            {
                              "type": "CallExpression",
                              "start": 28692,
                              "end": 28709,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 30
                                },
                                "end": {
                                  "line": 693,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28692,
                                "end": 28707,
                                "loc": {
                                  "start": {
                                    "line": 693,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 693,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28692,
                                  "end": 28698,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 36
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28699,
                                  "end": 28707,
                                  "loc": {
                                    "start": {
                                      "line": 693,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 693,
                                      "column": 45
                                    }
                                  },
                                  "name": "getState"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 28720,
                      "end": 28733,
                      "loc": {
                        "start": {
                          "line": 694,
                          "column": 8
                        },
                        "end": {
                          "line": 694,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 28727,
                        "end": 28732,
                        "loc": {
                          "start": {
                            "line": 694,
                            "column": 15
                          },
                          "end": {
                            "line": 694,
                            "column": 20
                          }
                        },
                        "name": "state"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28745,
              "end": 30959,
              "loc": {
                "start": {
                  "line": 697,
                  "column": 4
                },
                "end": {
                  "line": 744,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28745,
                "end": 28771,
                "loc": {
                  "start": {
                    "line": 697,
                    "column": 4
                  },
                  "end": {
                    "line": 697,
                    "column": 30
                  }
                },
                "name": "getStateLinearContinuation"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28771,
                "end": 30959,
                "loc": {
                  "start": {
                    "line": 697,
                    "column": 30
                  },
                  "end": {
                    "line": 744,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 28772,
                    "end": 28778,
                    "loc": {
                      "start": {
                        "line": 697,
                        "column": 31
                      },
                      "end": {
                        "line": 697,
                        "column": 37
                      }
                    },
                    "name": "states"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 28780,
                  "end": 30959,
                  "loc": {
                    "start": {
                      "line": 697,
                      "column": 39
                    },
                    "end": {
                      "line": 744,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 28790,
                      "end": 28843,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 8
                        },
                        "end": {
                          "line": 698,
                          "column": 61
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 28794,
                        "end": 28834,
                        "loc": {
                          "start": {
                            "line": 698,
                            "column": 12
                          },
                          "end": {
                            "line": 698,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 28794,
                          "end": 28812,
                          "loc": {
                            "start": {
                              "line": 698,
                              "column": 12
                            },
                            "end": {
                              "line": 698,
                              "column": 30
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28794,
                            "end": 28803,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 12
                              },
                              "end": {
                                "line": 698,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28794,
                              "end": 28800,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 12
                                },
                                "end": {
                                  "line": 698,
                                  "column": 18
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28801,
                              "end": 28802,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 19
                                },
                                "end": {
                                  "line": 698,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28808,
                            "end": 28812,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 26
                              },
                              "end": {
                                "line": 698,
                                "column": 30
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 28816,
                          "end": 28834,
                          "loc": {
                            "start": {
                              "line": 698,
                              "column": 34
                            },
                            "end": {
                              "line": 698,
                              "column": 52
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28816,
                            "end": 28825,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 34
                              },
                              "end": {
                                "line": 698,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28816,
                              "end": 28822,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 34
                                },
                                "end": {
                                  "line": 698,
                                  "column": 40
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28823,
                              "end": 28824,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 41
                                },
                                "end": {
                                  "line": 698,
                                  "column": 42
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28830,
                            "end": 28834,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 48
                              },
                              "end": {
                                "line": 698,
                                "column": 52
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 28836,
                        "end": 28843,
                        "loc": {
                          "start": {
                            "line": 698,
                            "column": 54
                          },
                          "end": {
                            "line": 698,
                            "column": 61
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28852,
                      "end": 28878,
                      "loc": {
                        "start": {
                          "line": 699,
                          "column": 8
                        },
                        "end": {
                          "line": 699,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28856,
                          "end": 28877,
                          "loc": {
                            "start": {
                              "line": 699,
                              "column": 12
                            },
                            "end": {
                              "line": 699,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28856,
                            "end": 28865,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 12
                              },
                              "end": {
                                "line": 699,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28868,
                            "end": 28877,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 24
                              },
                              "end": {
                                "line": 699,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28872,
                              "end": 28875,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 28
                                },
                                "end": {
                                  "line": 699,
                                  "column": 31
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 28888,
                      "end": 29160,
                      "loc": {
                        "start": {
                          "line": 701,
                          "column": 8
                        },
                        "end": {
                          "line": 705,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 28897,
                        "end": 28909,
                        "loc": {
                          "start": {
                            "line": 701,
                            "column": 17
                          },
                          "end": {
                            "line": 701,
                            "column": 29
                          }
                        },
                        "name": "getPointDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 28911,
                          "end": 28917,
                          "loc": {
                            "start": {
                              "line": 701,
                              "column": 31
                            },
                            "end": {
                              "line": 701,
                              "column": 37
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 28919,
                        "end": 29160,
                        "loc": {
                          "start": {
                            "line": 701,
                            "column": 39
                          },
                          "end": {
                            "line": 705,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 28933,
                            "end": 28996,
                            "loc": {
                              "start": {
                                "line": 702,
                                "column": 12
                              },
                              "end": {
                                "line": 702,
                                "column": 75
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 28937,
                              "end": 28959,
                              "loc": {
                                "start": {
                                  "line": 702,
                                  "column": 16
                                },
                                "end": {
                                  "line": 702,
                                  "column": 38
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 28938,
                                "end": 28959,
                                "loc": {
                                  "start": {
                                    "line": 702,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 702,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 28938,
                                  "end": 28951,
                                  "loc": {
                                    "start": {
                                      "line": 702,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 702,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28938,
                                    "end": 28943,
                                    "loc": {
                                      "start": {
                                        "line": 702,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 702,
                                        "column": 22
                                      }
                                    },
                                    "name": "Array"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28944,
                                    "end": 28951,
                                    "loc": {
                                      "start": {
                                        "line": 702,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 702,
                                        "column": 30
                                      }
                                    },
                                    "name": "isArray"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 28952,
                                    "end": 28958,
                                    "loc": {
                                      "start": {
                                        "line": 702,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 702,
                                        "column": 37
                                      }
                                    },
                                    "name": "states"
                                  }
                                ]
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 28961,
                              "end": 28996,
                              "loc": {
                                "start": {
                                  "line": 702,
                                  "column": 40
                                },
                                "end": {
                                  "line": 702,
                                  "column": 75
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 28968,
                                "end": 28995,
                                "loc": {
                                  "start": {
                                    "line": 702,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 702,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 28972,
                                  "end": 28975,
                                  "loc": {
                                    "start": {
                                      "line": 702,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 702,
                                      "column": 54
                                    }
                                  },
                                  "name": "Map"
                                },
                                "arguments": [
                                  {
                                    "type": "ArrayExpression",
                                    "start": 28976,
                                    "end": 28994,
                                    "loc": {
                                      "start": {
                                        "line": 702,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 702,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28977,
                                        "end": 28984,
                                        "loc": {
                                          "start": {
                                            "line": 702,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 702,
                                            "column": 63
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28978,
                                            "end": 28981,
                                            "loc": {
                                              "start": {
                                                "line": 702,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 702,
                                                "column": 60
                                              }
                                            },
                                            "value": "x",
                                            "rawValue": "x",
                                            "raw": "'x'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28982,
                                            "end": 28983,
                                            "loc": {
                                              "start": {
                                                "line": 702,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 702,
                                                "column": 62
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28985,
                                        "end": 28993,
                                        "loc": {
                                          "start": {
                                            "line": 702,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 702,
                                            "column": 72
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28986,
                                            "end": 28989,
                                            "loc": {
                                              "start": {
                                                "line": 702,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 702,
                                                "column": 68
                                              }
                                            },
                                            "value": "y",
                                            "rawValue": "y",
                                            "raw": "'y'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28991,
                                            "end": 28992,
                                            "loc": {
                                              "start": {
                                                "line": 702,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 702,
                                                "column": 71
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 29009,
                            "end": 29150,
                            "loc": {
                              "start": {
                                "line": 703,
                                "column": 12
                              },
                              "end": {
                                "line": 704,
                                "column": 77
                              }
                            },
                            "argument": {
                              "type": "NewExpression",
                              "start": 29016,
                              "end": 29149,
                              "loc": {
                                "start": {
                                  "line": 703,
                                  "column": 19
                                },
                                "end": {
                                  "line": 704,
                                  "column": 76
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 29020,
                                "end": 29023,
                                "loc": {
                                  "start": {
                                    "line": 703,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 703,
                                    "column": 26
                                  }
                                },
                                "name": "Map"
                              },
                              "arguments": [
                                {
                                  "type": "ArrayExpression",
                                  "start": 29024,
                                  "end": 29148,
                                  "loc": {
                                    "start": {
                                      "line": 703,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 704,
                                      "column": 75
                                    }
                                  },
                                  "elements": [
                                    {
                                      "type": "ArrayExpression",
                                      "start": 29025,
                                      "end": 29071,
                                      "loc": {
                                        "start": {
                                          "line": 703,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 703,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 29026,
                                          "end": 29029,
                                          "loc": {
                                            "start": {
                                              "line": 703,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 703,
                                              "column": 32
                                            }
                                          },
                                          "value": "x",
                                          "rawValue": "x",
                                          "raw": "'x'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 29031,
                                          "end": 29070,
                                          "loc": {
                                            "start": {
                                              "line": 703,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 703,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 29031,
                                            "end": 29049,
                                            "loc": {
                                              "start": {
                                                "line": 703,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 703,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29031,
                                              "end": 29044,
                                              "loc": {
                                                "start": {
                                                  "line": 703,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 703,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29031,
                                                "end": 29040,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29031,
                                                  "end": 29037,
                                                  "loc": {
                                                    "start": {
                                                      "line": 703,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 703,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29038,
                                                  "end": 29039,
                                                  "loc": {
                                                    "start": {
                                                      "line": 703,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 703,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29041,
                                                "end": 29044,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29045,
                                                "end": 29048,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 29052,
                                            "end": 29070,
                                            "loc": {
                                              "start": {
                                                "line": 703,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 703,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29052,
                                              "end": 29065,
                                              "loc": {
                                                "start": {
                                                  "line": 703,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 703,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29052,
                                                "end": 29061,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29052,
                                                  "end": 29058,
                                                  "loc": {
                                                    "start": {
                                                      "line": 703,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 703,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29059,
                                                  "end": 29060,
                                                  "loc": {
                                                    "start": {
                                                      "line": 703,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 703,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29062,
                                                "end": 29065,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29066,
                                                "end": 29069,
                                                "loc": {
                                                  "start": {
                                                    "line": 703,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 703,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "ArrayExpression",
                                      "start": 29101,
                                      "end": 29147,
                                      "loc": {
                                        "start": {
                                          "line": 704,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 704,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 29102,
                                          "end": 29105,
                                          "loc": {
                                            "start": {
                                              "line": 704,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 704,
                                              "column": 32
                                            }
                                          },
                                          "value": "y",
                                          "rawValue": "y",
                                          "raw": "'y'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 29107,
                                          "end": 29146,
                                          "loc": {
                                            "start": {
                                              "line": 704,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 704,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 29107,
                                            "end": 29125,
                                            "loc": {
                                              "start": {
                                                "line": 704,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 704,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29107,
                                              "end": 29120,
                                              "loc": {
                                                "start": {
                                                  "line": 704,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 704,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29107,
                                                "end": 29116,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29107,
                                                  "end": 29113,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29114,
                                                  "end": 29115,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29117,
                                                "end": 29120,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29121,
                                                "end": 29124,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 29128,
                                            "end": 29146,
                                            "loc": {
                                              "start": {
                                                "line": 704,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 704,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29128,
                                              "end": 29141,
                                              "loc": {
                                                "start": {
                                                  "line": 704,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 704,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29128,
                                                "end": 29137,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29128,
                                                  "end": 29134,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29135,
                                                  "end": 29136,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29138,
                                                "end": 29141,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29142,
                                                "end": 29145,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29170,
                      "end": 29638,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 8
                        },
                        "end": {
                          "line": 714,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29179,
                        "end": 29190,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 17
                          },
                          "end": {
                            "line": 707,
                            "column": 28
                          }
                        },
                        "name": "getLineDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29192,
                          "end": 29198,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 30
                            },
                            "end": {
                              "line": 707,
                              "column": 36
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29200,
                          "end": 29206,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 38
                            },
                            "end": {
                              "line": 707,
                              "column": 44
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29208,
                        "end": 29638,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 46
                          },
                          "end": {
                            "line": 714,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29222,
                            "end": 29251,
                            "loc": {
                              "start": {
                                "line": 708,
                                "column": 12
                              },
                              "end": {
                                "line": 708,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29226,
                                "end": 29250,
                                "loc": {
                                  "start": {
                                    "line": 708,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 708,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29226,
                                  "end": 29238,
                                  "loc": {
                                    "start": {
                                      "line": 708,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 708,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29241,
                                  "end": 29250,
                                  "loc": {
                                    "start": {
                                      "line": 708,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 708,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29245,
                                    "end": 29248,
                                    "loc": {
                                      "start": {
                                        "line": 708,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 708,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29264,
                            "end": 29419,
                            "loc": {
                              "start": {
                                "line": 709,
                                "column": 12
                              },
                              "end": {
                                "line": 710,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29268,
                              "end": 29295,
                              "loc": {
                                "start": {
                                  "line": 709,
                                  "column": 16
                                },
                                "end": {
                                  "line": 709,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29268,
                                "end": 29281,
                                "loc": {
                                  "start": {
                                    "line": 709,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 709,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29268,
                                  "end": 29277,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29268,
                                    "end": 29274,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29275,
                                    "end": 29276,
                                    "loc": {
                                      "start": {
                                        "line": 709,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 709,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29278,
                                  "end": 29281,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29282,
                                  "end": 29294,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29313,
                              "end": 29419,
                              "loc": {
                                "start": {
                                  "line": 710,
                                  "column": 16
                                },
                                "end": {
                                  "line": 710,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29313,
                                "end": 29418,
                                "loc": {
                                  "start": {
                                    "line": 710,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 710,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29313,
                                  "end": 29329,
                                  "loc": {
                                    "start": {
                                      "line": 710,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 710,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29313,
                                    "end": 29325,
                                    "loc": {
                                      "start": {
                                        "line": 710,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 710,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29326,
                                    "end": 29329,
                                    "loc": {
                                      "start": {
                                        "line": 710,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 710,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29330,
                                    "end": 29342,
                                    "loc": {
                                      "start": {
                                        "line": 710,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 710,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29344,
                                    "end": 29417,
                                    "loc": {
                                      "start": {
                                        "line": 710,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 710,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29344,
                                      "end": 29356,
                                      "loc": {
                                        "start": {
                                          "line": 710,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 710,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29358,
                                        "end": 29416,
                                        "loc": {
                                          "start": {
                                            "line": 710,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 710,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29359,
                                            "end": 29386,
                                            "loc": {
                                              "start": {
                                                "line": 710,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 710,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29359,
                                              "end": 29372,
                                              "loc": {
                                                "start": {
                                                  "line": 710,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 710,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29359,
                                                "end": 29368,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29359,
                                                  "end": 29365,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29366,
                                                  "end": 29367,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29369,
                                                "end": 29372,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29373,
                                                "end": 29385,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29388,
                                            "end": 29415,
                                            "loc": {
                                              "start": {
                                                "line": 710,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 710,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29388,
                                              "end": 29401,
                                              "loc": {
                                                "start": {
                                                  "line": 710,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 710,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29388,
                                                "end": 29397,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29388,
                                                  "end": 29394,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29395,
                                                  "end": 29396,
                                                  "loc": {
                                                    "start": {
                                                      "line": 710,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 710,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29398,
                                                "end": 29401,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29402,
                                                "end": 29414,
                                                "loc": {
                                                  "start": {
                                                    "line": 710,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 710,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29432,
                            "end": 29579,
                            "loc": {
                              "start": {
                                "line": 711,
                                "column": 12
                              },
                              "end": {
                                "line": 712,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29436,
                              "end": 29461,
                              "loc": {
                                "start": {
                                  "line": 711,
                                  "column": 16
                                },
                                "end": {
                                  "line": 711,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29436,
                                "end": 29449,
                                "loc": {
                                  "start": {
                                    "line": 711,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 711,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29436,
                                  "end": 29445,
                                  "loc": {
                                    "start": {
                                      "line": 711,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 711,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29436,
                                    "end": 29442,
                                    "loc": {
                                      "start": {
                                        "line": 711,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 711,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29443,
                                    "end": 29444,
                                    "loc": {
                                      "start": {
                                        "line": 711,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 711,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29446,
                                  "end": 29449,
                                  "loc": {
                                    "start": {
                                      "line": 711,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 711,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29450,
                                  "end": 29460,
                                  "loc": {
                                    "start": {
                                      "line": 711,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 711,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29479,
                              "end": 29579,
                              "loc": {
                                "start": {
                                  "line": 712,
                                  "column": 16
                                },
                                "end": {
                                  "line": 712,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29479,
                                "end": 29578,
                                "loc": {
                                  "start": {
                                    "line": 712,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 712,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29479,
                                  "end": 29495,
                                  "loc": {
                                    "start": {
                                      "line": 712,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 712,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29479,
                                    "end": 29491,
                                    "loc": {
                                      "start": {
                                        "line": 712,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 712,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29492,
                                    "end": 29495,
                                    "loc": {
                                      "start": {
                                        "line": 712,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 712,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29496,
                                    "end": 29506,
                                    "loc": {
                                      "start": {
                                        "line": 712,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 712,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29508,
                                    "end": 29577,
                                    "loc": {
                                      "start": {
                                        "line": 712,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 712,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29508,
                                      "end": 29520,
                                      "loc": {
                                        "start": {
                                          "line": 712,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 712,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29522,
                                        "end": 29576,
                                        "loc": {
                                          "start": {
                                            "line": 712,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 712,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29523,
                                            "end": 29548,
                                            "loc": {
                                              "start": {
                                                "line": 712,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 712,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29523,
                                              "end": 29536,
                                              "loc": {
                                                "start": {
                                                  "line": 712,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 712,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29523,
                                                "end": 29532,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29523,
                                                  "end": 29529,
                                                  "loc": {
                                                    "start": {
                                                      "line": 712,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 712,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29530,
                                                  "end": 29531,
                                                  "loc": {
                                                    "start": {
                                                      "line": 712,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 712,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29533,
                                                "end": 29536,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29537,
                                                "end": 29547,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29550,
                                            "end": 29575,
                                            "loc": {
                                              "start": {
                                                "line": 712,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 712,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29550,
                                              "end": 29563,
                                              "loc": {
                                                "start": {
                                                  "line": 712,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 712,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29550,
                                                "end": 29559,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29550,
                                                  "end": 29556,
                                                  "loc": {
                                                    "start": {
                                                      "line": 712,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 712,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29557,
                                                  "end": 29558,
                                                  "loc": {
                                                    "start": {
                                                      "line": 712,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 712,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29560,
                                                "end": 29563,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29564,
                                                "end": 29574,
                                                "loc": {
                                                  "start": {
                                                    "line": 712,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 712,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 29592,
                            "end": 29628,
                            "loc": {
                              "start": {
                                "line": 713,
                                "column": 12
                              },
                              "end": {
                                "line": 713,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 29592,
                              "end": 29627,
                              "loc": {
                                "start": {
                                  "line": 713,
                                  "column": 12
                                },
                                "end": {
                                  "line": 713,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29592,
                                "end": 29605,
                                "loc": {
                                  "start": {
                                    "line": 713,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 713,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29592,
                                  "end": 29601,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29602,
                                  "end": 29605,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 29606,
                                  "end": 29612,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 29614,
                                  "end": 29626,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29648,
                      "end": 30387,
                      "loc": {
                        "start": {
                          "line": 716,
                          "column": 8
                        },
                        "end": {
                          "line": 728,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29657,
                        "end": 29667,
                        "loc": {
                          "start": {
                            "line": 716,
                            "column": 17
                          },
                          "end": {
                            "line": 716,
                            "column": 27
                          }
                        },
                        "name": "getArcDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29669,
                          "end": 29675,
                          "loc": {
                            "start": {
                              "line": 716,
                              "column": 29
                            },
                            "end": {
                              "line": 716,
                              "column": 35
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29677,
                          "end": 29683,
                          "loc": {
                            "start": {
                              "line": 716,
                              "column": 37
                            },
                            "end": {
                              "line": 716,
                              "column": 43
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29685,
                        "end": 30387,
                        "loc": {
                          "start": {
                            "line": 716,
                            "column": 45
                          },
                          "end": {
                            "line": 728,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29700,
                            "end": 29729,
                            "loc": {
                              "start": {
                                "line": 718,
                                "column": 12
                              },
                              "end": {
                                "line": 718,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29704,
                                "end": 29728,
                                "loc": {
                                  "start": {
                                    "line": 718,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 718,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29704,
                                  "end": 29716,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29719,
                                  "end": 29728,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29723,
                                    "end": 29726,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29742,
                            "end": 29897,
                            "loc": {
                              "start": {
                                "line": 719,
                                "column": 12
                              },
                              "end": {
                                "line": 720,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29746,
                              "end": 29773,
                              "loc": {
                                "start": {
                                  "line": 719,
                                  "column": 16
                                },
                                "end": {
                                  "line": 719,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29746,
                                "end": 29759,
                                "loc": {
                                  "start": {
                                    "line": 719,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 719,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29746,
                                  "end": 29755,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29746,
                                    "end": 29752,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29753,
                                    "end": 29754,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29756,
                                  "end": 29759,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29760,
                                  "end": 29772,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29791,
                              "end": 29897,
                              "loc": {
                                "start": {
                                  "line": 720,
                                  "column": 16
                                },
                                "end": {
                                  "line": 720,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29791,
                                "end": 29896,
                                "loc": {
                                  "start": {
                                    "line": 720,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 720,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29791,
                                  "end": 29807,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29791,
                                    "end": 29803,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29804,
                                    "end": 29807,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29808,
                                    "end": 29820,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29822,
                                    "end": 29895,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29822,
                                      "end": 29834,
                                      "loc": {
                                        "start": {
                                          "line": 720,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 720,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29836,
                                        "end": 29894,
                                        "loc": {
                                          "start": {
                                            "line": 720,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 720,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29837,
                                            "end": 29864,
                                            "loc": {
                                              "start": {
                                                "line": 720,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 720,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29837,
                                              "end": 29850,
                                              "loc": {
                                                "start": {
                                                  "line": 720,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 720,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29837,
                                                "end": 29846,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29837,
                                                  "end": 29843,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29844,
                                                  "end": 29845,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29847,
                                                "end": 29850,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29851,
                                                "end": 29863,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29866,
                                            "end": 29893,
                                            "loc": {
                                              "start": {
                                                "line": 720,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 720,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29866,
                                              "end": 29879,
                                              "loc": {
                                                "start": {
                                                  "line": 720,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 720,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29866,
                                                "end": 29875,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29866,
                                                  "end": 29872,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29873,
                                                  "end": 29874,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29876,
                                                "end": 29879,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29880,
                                                "end": 29892,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29910,
                            "end": 30057,
                            "loc": {
                              "start": {
                                "line": 721,
                                "column": 12
                              },
                              "end": {
                                "line": 722,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29914,
                              "end": 29939,
                              "loc": {
                                "start": {
                                  "line": 721,
                                  "column": 16
                                },
                                "end": {
                                  "line": 721,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29914,
                                "end": 29927,
                                "loc": {
                                  "start": {
                                    "line": 721,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 721,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29914,
                                  "end": 29923,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29914,
                                    "end": 29920,
                                    "loc": {
                                      "start": {
                                        "line": 721,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 721,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29921,
                                    "end": 29922,
                                    "loc": {
                                      "start": {
                                        "line": 721,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 721,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29924,
                                  "end": 29927,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29928,
                                  "end": 29938,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29957,
                              "end": 30057,
                              "loc": {
                                "start": {
                                  "line": 722,
                                  "column": 16
                                },
                                "end": {
                                  "line": 722,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29957,
                                "end": 30056,
                                "loc": {
                                  "start": {
                                    "line": 722,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 722,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29957,
                                  "end": 29973,
                                  "loc": {
                                    "start": {
                                      "line": 722,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 722,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29957,
                                    "end": 29969,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29970,
                                    "end": 29973,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29974,
                                    "end": 29984,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29986,
                                    "end": 30055,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29986,
                                      "end": 29998,
                                      "loc": {
                                        "start": {
                                          "line": 722,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 722,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30000,
                                        "end": 30054,
                                        "loc": {
                                          "start": {
                                            "line": 722,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 722,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30001,
                                            "end": 30026,
                                            "loc": {
                                              "start": {
                                                "line": 722,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 722,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30001,
                                              "end": 30014,
                                              "loc": {
                                                "start": {
                                                  "line": 722,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 722,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30001,
                                                "end": 30010,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30001,
                                                  "end": 30007,
                                                  "loc": {
                                                    "start": {
                                                      "line": 722,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 722,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30008,
                                                  "end": 30009,
                                                  "loc": {
                                                    "start": {
                                                      "line": 722,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 722,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30011,
                                                "end": 30014,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30015,
                                                "end": 30025,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30028,
                                            "end": 30053,
                                            "loc": {
                                              "start": {
                                                "line": 722,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 722,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30028,
                                              "end": 30041,
                                              "loc": {
                                                "start": {
                                                  "line": 722,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 722,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30028,
                                                "end": 30037,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30028,
                                                  "end": 30034,
                                                  "loc": {
                                                    "start": {
                                                      "line": 722,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 722,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30035,
                                                  "end": 30036,
                                                  "loc": {
                                                    "start": {
                                                      "line": 722,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 722,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30038,
                                                "end": 30041,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30042,
                                                "end": 30052,
                                                "loc": {
                                                  "start": {
                                                    "line": 722,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 722,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30070,
                            "end": 30209,
                            "loc": {
                              "start": {
                                "line": 723,
                                "column": 12
                              },
                              "end": {
                                "line": 724,
                                "column": 110
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30074,
                              "end": 30097,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 16
                                },
                                "end": {
                                  "line": 723,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30074,
                                "end": 30087,
                                "loc": {
                                  "start": {
                                    "line": 723,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 723,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30074,
                                  "end": 30083,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30074,
                                    "end": 30080,
                                    "loc": {
                                      "start": {
                                        "line": 723,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 723,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30081,
                                    "end": 30082,
                                    "loc": {
                                      "start": {
                                        "line": 723,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 723,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30084,
                                  "end": 30087,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30088,
                                  "end": 30096,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 38
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30115,
                              "end": 30209,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 16
                                },
                                "end": {
                                  "line": 724,
                                  "column": 110
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30115,
                                "end": 30208,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 109
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30115,
                                  "end": 30131,
                                  "loc": {
                                    "start": {
                                      "line": 724,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 724,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30115,
                                    "end": 30127,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30128,
                                    "end": 30131,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30132,
                                    "end": 30140,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 41
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30142,
                                    "end": 30207,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 108
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30142,
                                      "end": 30154,
                                      "loc": {
                                        "start": {
                                          "line": 724,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 724,
                                          "column": 55
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30156,
                                        "end": 30206,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 107
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30157,
                                            "end": 30180,
                                            "loc": {
                                              "start": {
                                                "line": 724,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 724,
                                                "column": 81
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30157,
                                              "end": 30170,
                                              "loc": {
                                                "start": {
                                                  "line": 724,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 724,
                                                  "column": 71
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30157,
                                                "end": 30166,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 67
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30157,
                                                  "end": 30163,
                                                  "loc": {
                                                    "start": {
                                                      "line": 724,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 724,
                                                      "column": 64
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30164,
                                                  "end": 30165,
                                                  "loc": {
                                                    "start": {
                                                      "line": 724,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 724,
                                                      "column": 66
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30167,
                                                "end": 30170,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 68
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 71
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30171,
                                                "end": 30179,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 80
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30182,
                                            "end": 30205,
                                            "loc": {
                                              "start": {
                                                "line": 724,
                                                "column": 83
                                              },
                                              "end": {
                                                "line": 724,
                                                "column": 106
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30182,
                                              "end": 30195,
                                              "loc": {
                                                "start": {
                                                  "line": 724,
                                                  "column": 83
                                                },
                                                "end": {
                                                  "line": 724,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30182,
                                                "end": 30191,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 83
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 92
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30182,
                                                  "end": 30188,
                                                  "loc": {
                                                    "start": {
                                                      "line": 724,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 724,
                                                      "column": 89
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30189,
                                                  "end": 30190,
                                                  "loc": {
                                                    "start": {
                                                      "line": 724,
                                                      "column": 90
                                                    },
                                                    "end": {
                                                      "line": 724,
                                                      "column": 91
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30192,
                                                "end": 30195,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 93
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30196,
                                                "end": 30204,
                                                "loc": {
                                                  "start": {
                                                    "line": 724,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 724,
                                                    "column": 105
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30222,
                            "end": 30328,
                            "loc": {
                              "start": {
                                "line": 725,
                                "column": 12
                              },
                              "end": {
                                "line": 726,
                                "column": 74
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30226,
                              "end": 30252,
                              "loc": {
                                "start": {
                                  "line": 725,
                                  "column": 16
                                },
                                "end": {
                                  "line": 725,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30226,
                                "end": 30239,
                                "loc": {
                                  "start": {
                                    "line": 725,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 725,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30226,
                                  "end": 30235,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30226,
                                    "end": 30232,
                                    "loc": {
                                      "start": {
                                        "line": 725,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 725,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30233,
                                    "end": 30234,
                                    "loc": {
                                      "start": {
                                        "line": 725,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 725,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30236,
                                  "end": 30239,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30240,
                                  "end": 30251,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 41
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30270,
                              "end": 30328,
                              "loc": {
                                "start": {
                                  "line": 726,
                                  "column": 16
                                },
                                "end": {
                                  "line": 726,
                                  "column": 74
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30270,
                                "end": 30327,
                                "loc": {
                                  "start": {
                                    "line": 726,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 726,
                                    "column": 73
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30270,
                                  "end": 30286,
                                  "loc": {
                                    "start": {
                                      "line": 726,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 726,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30270,
                                    "end": 30282,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30283,
                                    "end": 30286,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30287,
                                    "end": 30298,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 44
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30300,
                                    "end": 30326,
                                    "loc": {
                                      "start": {
                                        "line": 726,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 726,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 30300,
                                      "end": 30313,
                                      "loc": {
                                        "start": {
                                          "line": 726,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 726,
                                          "column": 59
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 30300,
                                        "end": 30309,
                                        "loc": {
                                          "start": {
                                            "line": 726,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 726,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 30300,
                                          "end": 30306,
                                          "loc": {
                                            "start": {
                                              "line": 726,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 726,
                                              "column": 52
                                            }
                                          },
                                          "name": "states"
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 30307,
                                          "end": 30308,
                                          "loc": {
                                            "start": {
                                              "line": 726,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 726,
                                              "column": 54
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30310,
                                        "end": 30313,
                                        "loc": {
                                          "start": {
                                            "line": 726,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 726,
                                            "column": 59
                                          }
                                        },
                                        "name": "get"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 30314,
                                        "end": 30325,
                                        "loc": {
                                          "start": {
                                            "line": 726,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 726,
                                            "column": 71
                                          }
                                        },
                                        "value": "clockwise",
                                        "rawValue": "clockwise",
                                        "raw": "'clockwise'"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 30341,
                            "end": 30377,
                            "loc": {
                              "start": {
                                "line": 727,
                                "column": 12
                              },
                              "end": {
                                "line": 727,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 30341,
                              "end": 30376,
                              "loc": {
                                "start": {
                                  "line": 727,
                                  "column": 12
                                },
                                "end": {
                                  "line": 727,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30341,
                                "end": 30354,
                                "loc": {
                                  "start": {
                                    "line": 727,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 727,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 30341,
                                  "end": 30350,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30351,
                                  "end": 30354,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 30355,
                                  "end": 30361,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 30363,
                                  "end": 30375,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 30397,
                      "end": 30926,
                      "loc": {
                        "start": {
                          "line": 730,
                          "column": 8
                        },
                        "end": {
                          "line": 741,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 30397,
                        "end": 30925,
                        "loc": {
                          "start": {
                            "line": 730,
                            "column": 8
                          },
                          "end": {
                            "line": 741,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 30397,
                          "end": 30414,
                          "loc": {
                            "start": {
                              "line": 730,
                              "column": 8
                            },
                            "end": {
                              "line": 730,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 30397,
                            "end": 30406,
                            "loc": {
                              "start": {
                                "line": 730,
                                "column": 8
                              },
                              "end": {
                                "line": 730,
                                "column": 17
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 30397,
                              "end": 30403,
                              "loc": {
                                "start": {
                                  "line": 730,
                                  "column": 8
                                },
                                "end": {
                                  "line": 730,
                                  "column": 14
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 30404,
                              "end": 30405,
                              "loc": {
                                "start": {
                                  "line": 730,
                                  "column": 15
                                },
                                "end": {
                                  "line": 730,
                                  "column": 16
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 30407,
                            "end": 30414,
                            "loc": {
                              "start": {
                                "line": 730,
                                "column": 18
                              },
                              "end": {
                                "line": 730,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 30415,
                            "end": 30918,
                            "loc": {
                              "start": {
                                "line": 730,
                                "column": 26
                              },
                              "end": {
                                "line": 741,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 30424,
                                "end": 30432,
                                "loc": {
                                  "start": {
                                    "line": 730,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 730,
                                    "column": 43
                                  }
                                },
                                "name": "subState"
                              },
                              {
                                "type": "Identifier",
                                "start": 30434,
                                "end": 30440,
                                "loc": {
                                  "start": {
                                    "line": 730,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 730,
                                    "column": 51
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 30442,
                              "end": 30918,
                              "loc": {
                                "start": {
                                  "line": 730,
                                  "column": 53
                                },
                                "end": {
                                  "line": 741,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 30456,
                                  "end": 30488,
                                  "loc": {
                                    "start": {
                                      "line": 731,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 731,
                                      "column": 44
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30460,
                                    "end": 30479,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 35
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 30460,
                                      "end": 30473,
                                      "loc": {
                                        "start": {
                                          "line": 731,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 731,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 30460,
                                        "end": 30468,
                                        "loc": {
                                          "start": {
                                            "line": 731,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 731,
                                            "column": 24
                                          }
                                        },
                                        "name": "subState"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30469,
                                        "end": 30473,
                                        "loc": {
                                          "start": {
                                            "line": 731,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 731,
                                            "column": 29
                                          }
                                        },
                                        "name": "size"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 30478,
                                      "end": 30479,
                                      "loc": {
                                        "start": {
                                          "line": 731,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 731,
                                          "column": 35
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 30481,
                                    "end": 30488,
                                    "loc": {
                                      "start": {
                                        "line": 731,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 731,
                                        "column": 44
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 30501,
                                  "end": 30542,
                                  "loc": {
                                    "start": {
                                      "line": 732,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 732,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 30505,
                                      "end": 30541,
                                      "loc": {
                                        "start": {
                                          "line": 732,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 732,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 30505,
                                        "end": 30517,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 732,
                                            "column": 28
                                          }
                                        },
                                        "name": "nextSubState"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 30520,
                                        "end": 30541,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 732,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 30520,
                                          "end": 30533,
                                          "loc": {
                                            "start": {
                                              "line": 732,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 732,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 30520,
                                            "end": 30529,
                                            "loc": {
                                              "start": {
                                                "line": 732,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 732,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30520,
                                              "end": 30526,
                                              "loc": {
                                                "start": {
                                                  "line": 732,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 732,
                                                  "column": 37
                                                }
                                              },
                                              "name": "states"
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 30527,
                                              "end": 30528,
                                              "loc": {
                                                "start": {
                                                  "line": 732,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 732,
                                                  "column": 39
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 30530,
                                            "end": 30533,
                                            "loc": {
                                              "start": {
                                                "line": 732,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 732,
                                                "column": 44
                                              }
                                            },
                                            "name": "get"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 30534,
                                            "end": 30540,
                                            "loc": {
                                              "start": {
                                                "line": 732,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 732,
                                                "column": 51
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 30556,
                                  "end": 30908,
                                  "loc": {
                                    "start": {
                                      "line": 734,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 740,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30560,
                                    "end": 30583,
                                    "loc": {
                                      "start": {
                                        "line": 734,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 734,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 30560,
                                      "end": 30566,
                                      "loc": {
                                        "start": {
                                          "line": 734,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 734,
                                          "column": 22
                                        }
                                      },
                                      "name": "object"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 30578,
                                      "end": 30583,
                                      "loc": {
                                        "start": {
                                          "line": 734,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 734,
                                          "column": 39
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 30585,
                                    "end": 30686,
                                    "loc": {
                                      "start": {
                                        "line": 734,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 736,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 30603,
                                        "end": 30672,
                                        "loc": {
                                          "start": {
                                            "line": 735,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 735,
                                            "column": 85
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 30603,
                                          "end": 30671,
                                          "loc": {
                                            "start": {
                                              "line": 735,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 735,
                                              "column": 84
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 30603,
                                            "end": 30615,
                                            "loc": {
                                              "start": {
                                                "line": 735,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 735,
                                                "column": 28
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30603,
                                              "end": 30611,
                                              "loc": {
                                                "start": {
                                                  "line": 735,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 735,
                                                  "column": 24
                                                }
                                              },
                                              "name": "subState"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 30612,
                                              "end": 30615,
                                              "loc": {
                                                "start": {
                                                  "line": 735,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 735,
                                                  "column": 28
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 30616,
                                              "end": 30622,
                                              "loc": {
                                                "start": {
                                                  "line": 735,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 735,
                                                  "column": 35
                                                }
                                              },
                                              "name": "object"
                                            },
                                            {
                                              "type": "CallExpression",
                                              "start": 30624,
                                              "end": 30670,
                                              "loc": {
                                                "start": {
                                                  "line": 735,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 735,
                                                  "column": 83
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30624,
                                                "end": 30636,
                                                "loc": {
                                                  "start": {
                                                    "line": 735,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 735,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "getPointDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30637,
                                                  "end": 30643,
                                                  "loc": {
                                                    "start": {
                                                      "line": 735,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 735,
                                                      "column": 56
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30645,
                                                  "end": 30669,
                                                  "loc": {
                                                    "start": {
                                                      "line": 735,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 735,
                                                      "column": 82
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30646,
                                                      "end": 30654,
                                                      "loc": {
                                                        "start": {
                                                          "line": 735,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 735,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30656,
                                                      "end": 30668,
                                                      "loc": {
                                                        "start": {
                                                          "line": 735,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 735,
                                                          "column": 81
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 30692,
                                    "end": 30908,
                                    "loc": {
                                      "start": {
                                        "line": 736,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 740,
                                        "column": 13
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 30696,
                                      "end": 30718,
                                      "loc": {
                                        "start": {
                                          "line": 736,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 736,
                                          "column": 45
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 30696,
                                        "end": 30702,
                                        "loc": {
                                          "start": {
                                            "line": 736,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 736,
                                            "column": 29
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 30714,
                                        "end": 30718,
                                        "loc": {
                                          "start": {
                                            "line": 736,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 736,
                                            "column": 45
                                          }
                                        },
                                        "name": "Line"
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "start": 30720,
                                      "end": 30798,
                                      "loc": {
                                        "start": {
                                          "line": 736,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 738,
                                          "column": 13
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 30738,
                                          "end": 30784,
                                          "loc": {
                                            "start": {
                                              "line": 737,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 737,
                                              "column": 62
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 30738,
                                            "end": 30783,
                                            "loc": {
                                              "start": {
                                                "line": 737,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 737,
                                                "column": 61
                                              }
                                            },
                                            "callee": {
                                              "type": "Identifier",
                                              "start": 30738,
                                              "end": 30749,
                                              "loc": {
                                                "start": {
                                                  "line": 737,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 737,
                                                  "column": 27
                                                }
                                              },
                                              "name": "getLineDiff"
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 30750,
                                                "end": 30756,
                                                "loc": {
                                                  "start": {
                                                    "line": 737,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 737,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "object"
                                              },
                                              {
                                                "type": "ArrayExpression",
                                                "start": 30758,
                                                "end": 30782,
                                                "loc": {
                                                  "start": {
                                                    "line": 737,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 737,
                                                    "column": 60
                                                  }
                                                },
                                                "elements": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30759,
                                                    "end": 30767,
                                                    "loc": {
                                                      "start": {
                                                        "line": 737,
                                                        "column": 37
                                                      },
                                                      "end": {
                                                        "line": 737,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "subState"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30769,
                                                    "end": 30781,
                                                    "loc": {
                                                      "start": {
                                                        "line": 737,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 737,
                                                        "column": 59
                                                      }
                                                    },
                                                    "name": "nextSubState"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 30804,
                                      "end": 30908,
                                      "loc": {
                                        "start": {
                                          "line": 738,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 740,
                                          "column": 13
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 30808,
                                        "end": 30829,
                                        "loc": {
                                          "start": {
                                            "line": 738,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 738,
                                            "column": 44
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 30808,
                                          "end": 30814,
                                          "loc": {
                                            "start": {
                                              "line": 738,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 738,
                                              "column": 29
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 30826,
                                          "end": 30829,
                                          "loc": {
                                            "start": {
                                              "line": 738,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 738,
                                              "column": 44
                                            }
                                          },
                                          "name": "Arc"
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 30831,
                                        "end": 30908,
                                        "loc": {
                                          "start": {
                                            "line": 738,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 740,
                                            "column": 13
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 30849,
                                            "end": 30894,
                                            "loc": {
                                              "start": {
                                                "line": 739,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 739,
                                                "column": 61
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 30849,
                                              "end": 30893,
                                              "loc": {
                                                "start": {
                                                  "line": 739,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 739,
                                                  "column": 60
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30849,
                                                "end": 30859,
                                                "loc": {
                                                  "start": {
                                                    "line": 739,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 739,
                                                    "column": 26
                                                  }
                                                },
                                                "name": "getArcDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30860,
                                                  "end": 30866,
                                                  "loc": {
                                                    "start": {
                                                      "line": 739,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 739,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30868,
                                                  "end": 30892,
                                                  "loc": {
                                                    "start": {
                                                      "line": 739,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 739,
                                                      "column": 59
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30869,
                                                      "end": 30877,
                                                      "loc": {
                                                        "start": {
                                                          "line": 739,
                                                          "column": 36
                                                        },
                                                        "end": {
                                                          "line": 739,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30879,
                                                      "end": 30891,
                                                      "loc": {
                                                        "start": {
                                                          "line": 739,
                                                          "column": 46
                                                        },
                                                        "end": {
                                                          "line": 739,
                                                          "column": 58
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      },
                                      "alternate": null
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 30920,
                            "end": 30924,
                            "loc": {
                              "start": {
                                "line": 741,
                                "column": 11
                              },
                              "end": {
                                "line": 741,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 30936,
                      "end": 30953,
                      "loc": {
                        "start": {
                          "line": 743,
                          "column": 8
                        },
                        "end": {
                          "line": 743,
                          "column": 25
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 30943,
                        "end": 30952,
                        "loc": {
                          "start": {
                            "line": 743,
                            "column": 15
                          },
                          "end": {
                            "line": 743,
                            "column": 24
                          }
                        },
                        "name": "stateDiff"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 30965,
              "end": 31610,
              "loc": {
                "start": {
                  "line": 746,
                  "column": 4
                },
                "end": {
                  "line": 760,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 30965,
                "end": 30979,
                "loc": {
                  "start": {
                    "line": 746,
                    "column": 4
                  },
                  "end": {
                    "line": 746,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 30979,
                "end": 31610,
                "loc": {
                  "start": {
                    "line": 746,
                    "column": 18
                  },
                  "end": {
                    "line": 760,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 30980,
                    "end": 30989,
                    "loc": {
                      "start": {
                        "line": 746,
                        "column": 19
                      },
                      "end": {
                        "line": 746,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 30991,
                  "end": 31610,
                  "loc": {
                    "start": {
                      "line": 746,
                      "column": 30
                    },
                    "end": {
                      "line": 760,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 31001,
                      "end": 31427,
                      "loc": {
                        "start": {
                          "line": 747,
                          "column": 8
                        },
                        "end": {
                          "line": 756,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 31001,
                        "end": 31426,
                        "loc": {
                          "start": {
                            "line": 747,
                            "column": 8
                          },
                          "end": {
                            "line": 756,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31001,
                          "end": 31018,
                          "loc": {
                            "start": {
                              "line": 747,
                              "column": 8
                            },
                            "end": {
                              "line": 747,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 31001,
                            "end": 31010,
                            "loc": {
                              "start": {
                                "line": 747,
                                "column": 8
                              },
                              "end": {
                                "line": 747,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31011,
                            "end": 31018,
                            "loc": {
                              "start": {
                                "line": 747,
                                "column": 18
                              },
                              "end": {
                                "line": 747,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31019,
                            "end": 31419,
                            "loc": {
                              "start": {
                                "line": 747,
                                "column": 26
                              },
                              "end": {
                                "line": 756,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31028,
                                "end": 31035,
                                "loc": {
                                  "start": {
                                    "line": 747,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 747,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 31037,
                                "end": 31043,
                                "loc": {
                                  "start": {
                                    "line": 747,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 747,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31045,
                              "end": 31419,
                              "loc": {
                                "start": {
                                  "line": 747,
                                  "column": 52
                                },
                                "end": {
                                  "line": 756,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31059,
                                  "end": 31281,
                                  "loc": {
                                    "start": {
                                      "line": 748,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 752,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 31063,
                                    "end": 31084,
                                    "loc": {
                                      "start": {
                                        "line": 748,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 748,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 31063,
                                      "end": 31070,
                                      "loc": {
                                        "start": {
                                          "line": 748,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 748,
                                          "column": 23
                                        }
                                      },
                                      "name": "subDiff"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 31075,
                                      "end": 31084,
                                      "loc": {
                                        "start": {
                                          "line": 748,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 748,
                                          "column": 37
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31086,
                                    "end": 31281,
                                    "loc": {
                                      "start": {
                                        "line": 748,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 752,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 31104,
                                        "end": 31196,
                                        "loc": {
                                          "start": {
                                            "line": 749,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 749,
                                            "column": 108
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 31108,
                                          "end": 31132,
                                          "loc": {
                                            "start": {
                                              "line": 749,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 749,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 31109,
                                            "end": 31132,
                                            "loc": {
                                              "start": {
                                                "line": 749,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 749,
                                                "column": 44
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31109,
                                              "end": 31124,
                                              "loc": {
                                                "start": {
                                                  "line": 749,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 749,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 31109,
                                                "end": 31113,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31114,
                                                "end": 31124,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "isOnSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 31125,
                                                "end": 31131,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 31134,
                                          "end": 31196,
                                          "loc": {
                                            "start": {
                                              "line": 749,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 749,
                                              "column": 108
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 31134,
                                            "end": 31195,
                                            "loc": {
                                              "start": {
                                                "line": 749,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 749,
                                                "column": 107
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31134,
                                              "end": 31147,
                                              "loc": {
                                                "start": {
                                                  "line": 749,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 749,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 31134,
                                                "end": 31141,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "console"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31142,
                                                "end": 31147,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "error"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31148,
                                                "end": 31183,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "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": 31185,
                                                "end": 31194,
                                                "loc": {
                                                  "start": {
                                                    "line": 749,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 749,
                                                    "column": 106
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31185,
                                                  "end": 31191,
                                                  "loc": {
                                                    "start": {
                                                      "line": 749,
                                                      "column": 97
                                                    },
                                                    "end": {
                                                      "line": 749,
                                                      "column": 103
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 31192,
                                                  "end": 31194,
                                                  "loc": {
                                                    "start": {
                                                      "line": 749,
                                                      "column": 104
                                                    },
                                                    "end": {
                                                      "line": 749,
                                                      "column": 106
                                                    }
                                                  },
                                                  "name": "id"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 31213,
                                        "end": 31243,
                                        "loc": {
                                          "start": {
                                            "line": 750,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 750,
                                            "column": 46
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 31213,
                                          "end": 31242,
                                          "loc": {
                                            "start": {
                                              "line": 750,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 750,
                                              "column": 45
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 31213,
                                            "end": 31234,
                                            "loc": {
                                              "start": {
                                                "line": 750,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 750,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 31213,
                                              "end": 31217,
                                              "loc": {
                                                "start": {
                                                  "line": 750,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 750,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 31218,
                                              "end": 31234,
                                              "loc": {
                                                "start": {
                                                  "line": 750,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 750,
                                                  "column": 37
                                                }
                                              },
                                              "name": "removeFromSketch"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 31235,
                                              "end": 31241,
                                              "loc": {
                                                "start": {
                                                  "line": 750,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 750,
                                                  "column": 44
                                                }
                                              },
                                              "name": "object"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31260,
                                        "end": 31267,
                                        "loc": {
                                          "start": {
                                            "line": 751,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 751,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 31294,
                                  "end": 31365,
                                  "loc": {
                                    "start": {
                                      "line": 753,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 754,
                                      "column": 41
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 31298,
                                    "end": 31322,
                                    "loc": {
                                      "start": {
                                        "line": 753,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 753,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 31299,
                                      "end": 31322,
                                      "loc": {
                                        "start": {
                                          "line": 753,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 753,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31299,
                                        "end": 31314,
                                        "loc": {
                                          "start": {
                                            "line": 753,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 753,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31299,
                                          "end": 31303,
                                          "loc": {
                                            "start": {
                                              "line": 753,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 753,
                                              "column": 21
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31304,
                                          "end": 31314,
                                          "loc": {
                                            "start": {
                                              "line": 753,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 753,
                                              "column": 32
                                            }
                                          },
                                          "name": "isOnSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31315,
                                          "end": 31321,
                                          "loc": {
                                            "start": {
                                              "line": 753,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 753,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 31340,
                                    "end": 31365,
                                    "loc": {
                                      "start": {
                                        "line": 754,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 754,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 31340,
                                      "end": 31364,
                                      "loc": {
                                        "start": {
                                          "line": 754,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 754,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31340,
                                        "end": 31356,
                                        "loc": {
                                          "start": {
                                            "line": 754,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 754,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31340,
                                          "end": 31344,
                                          "loc": {
                                            "start": {
                                              "line": 754,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 754,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31345,
                                          "end": 31356,
                                          "loc": {
                                            "start": {
                                              "line": 754,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 754,
                                              "column": 32
                                            }
                                          },
                                          "name": "addToSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31357,
                                          "end": 31363,
                                          "loc": {
                                            "start": {
                                              "line": 754,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 754,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31378,
                                  "end": 31409,
                                  "loc": {
                                    "start": {
                                      "line": 755,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 755,
                                      "column": 43
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31378,
                                    "end": 31408,
                                    "loc": {
                                      "start": {
                                        "line": 755,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 755,
                                        "column": 42
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31378,
                                      "end": 31399,
                                      "loc": {
                                        "start": {
                                          "line": 755,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 755,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31378,
                                        "end": 31384,
                                        "loc": {
                                          "start": {
                                            "line": 755,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 755,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31385,
                                        "end": 31399,
                                        "loc": {
                                          "start": {
                                            "line": 755,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 755,
                                            "column": 33
                                          }
                                        },
                                        "name": "applyStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31400,
                                        "end": 31407,
                                        "loc": {
                                          "start": {
                                            "line": 755,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 755,
                                            "column": 41
                                          }
                                        },
                                        "name": "subDiff"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31421,
                            "end": 31425,
                            "loc": {
                              "start": {
                                "line": 756,
                                "column": 11
                              },
                              "end": {
                                "line": 756,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31436,
                          "end": 31513,
                          "loc": {
                            "start": {
                              "line": 757,
                              "column": 8
                            },
                            "end": {
                              "line": 757,
                              "column": 85
                            }
                          },
                          "range": [
                            31436,
                            31513
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31522,
                      "end": 31604,
                      "loc": {
                        "start": {
                          "line": 758,
                          "column": 8
                        },
                        "end": {
                          "line": 759,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31527,
                        "end": 31537,
                        "loc": {
                          "start": {
                            "line": 758,
                            "column": 13
                          },
                          "end": {
                            "line": 758,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31531,
                            "end": 31537,
                            "loc": {
                              "start": {
                                "line": 758,
                                "column": 17
                              },
                              "end": {
                                "line": 758,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31531,
                              "end": 31537,
                              "loc": {
                                "start": {
                                  "line": 758,
                                  "column": 17
                                },
                                "end": {
                                  "line": 758,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31541,
                        "end": 31566,
                        "loc": {
                          "start": {
                            "line": 758,
                            "column": 27
                          },
                          "end": {
                            "line": 758,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31541,
                          "end": 31564,
                          "loc": {
                            "start": {
                              "line": 758,
                              "column": 27
                            },
                            "end": {
                              "line": 758,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31541,
                            "end": 31545,
                            "loc": {
                              "start": {
                                "line": 758,
                                "column": 27
                              },
                              "end": {
                                "line": 758,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31546,
                            "end": 31564,
                            "loc": {
                              "start": {
                                "line": 758,
                                "column": 32
                              },
                              "end": {
                                "line": 758,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 31580,
                        "end": 31604,
                        "loc": {
                          "start": {
                            "line": 759,
                            "column": 12
                          },
                          "end": {
                            "line": 759,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 31580,
                          "end": 31603,
                          "loc": {
                            "start": {
                              "line": 759,
                              "column": 12
                            },
                            "end": {
                              "line": 759,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 31580,
                            "end": 31601,
                            "loc": {
                              "start": {
                                "line": 759,
                                "column": 12
                              },
                              "end": {
                                "line": 759,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 31580,
                              "end": 31586,
                              "loc": {
                                "start": {
                                  "line": 759,
                                  "column": 12
                                },
                                "end": {
                                  "line": 759,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 31587,
                              "end": 31601,
                              "loc": {
                                "start": {
                                  "line": 759,
                                  "column": 19
                                },
                                "end": {
                                  "line": 759,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31436,
                          "end": 31513,
                          "loc": {
                            "start": {
                              "line": 757,
                              "column": 8
                            },
                            "end": {
                              "line": 757,
                              "column": 85
                            }
                          },
                          "range": [
                            31436,
                            31513
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 31616,
              "end": 32054,
              "loc": {
                "start": {
                  "line": 762,
                  "column": 4
                },
                "end": {
                  "line": 772,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 31616,
                "end": 31628,
                "loc": {
                  "start": {
                    "line": 762,
                    "column": 4
                  },
                  "end": {
                    "line": 762,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 31628,
                "end": 32054,
                "loc": {
                  "start": {
                    "line": 762,
                    "column": 16
                  },
                  "end": {
                    "line": 772,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 31629,
                    "end": 31638,
                    "loc": {
                      "start": {
                        "line": 762,
                        "column": 17
                      },
                      "end": {
                        "line": 762,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 31640,
                    "end": 31645,
                    "loc": {
                      "start": {
                        "line": 762,
                        "column": 28
                      },
                      "end": {
                        "line": 762,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 31647,
                  "end": 32054,
                  "loc": {
                    "start": {
                      "line": 762,
                      "column": 35
                    },
                    "end": {
                      "line": 772,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 31657,
                      "end": 31871,
                      "loc": {
                        "start": {
                          "line": 763,
                          "column": 8
                        },
                        "end": {
                          "line": 768,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 31657,
                        "end": 31870,
                        "loc": {
                          "start": {
                            "line": 763,
                            "column": 8
                          },
                          "end": {
                            "line": 768,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31657,
                          "end": 31674,
                          "loc": {
                            "start": {
                              "line": 763,
                              "column": 8
                            },
                            "end": {
                              "line": 763,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 31657,
                            "end": 31666,
                            "loc": {
                              "start": {
                                "line": 763,
                                "column": 8
                              },
                              "end": {
                                "line": 763,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31667,
                            "end": 31674,
                            "loc": {
                              "start": {
                                "line": 763,
                                "column": 18
                              },
                              "end": {
                                "line": 763,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31675,
                            "end": 31863,
                            "loc": {
                              "start": {
                                "line": 763,
                                "column": 26
                              },
                              "end": {
                                "line": 768,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31684,
                                "end": 31691,
                                "loc": {
                                  "start": {
                                    "line": 763,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 763,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 31693,
                                "end": 31699,
                                "loc": {
                                  "start": {
                                    "line": 763,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 763,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31701,
                              "end": 31863,
                              "loc": {
                                "start": {
                                  "line": 763,
                                  "column": 52
                                },
                                "end": {
                                  "line": 768,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31715,
                                  "end": 31804,
                                  "loc": {
                                    "start": {
                                      "line": 764,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 766,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 31719,
                                    "end": 31763,
                                    "loc": {
                                      "start": {
                                        "line": 764,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 764,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 31719,
                                      "end": 31735,
                                      "loc": {
                                        "start": {
                                          "line": 764,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 764,
                                          "column": 32
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 31719,
                                        "end": 31726,
                                        "loc": {
                                          "start": {
                                            "line": 764,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 764,
                                            "column": 23
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "Literal",
                                        "start": 31731,
                                        "end": 31735,
                                        "loc": {
                                          "start": {
                                            "line": 764,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 764,
                                            "column": 32
                                          }
                                        },
                                        "value": null,
                                        "rawValue": null,
                                        "raw": "null"
                                      }
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 31739,
                                      "end": 31763,
                                      "loc": {
                                        "start": {
                                          "line": 764,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 764,
                                          "column": 60
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "CallExpression",
                                        "start": 31740,
                                        "end": 31763,
                                        "loc": {
                                          "start": {
                                            "line": 764,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 764,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 31740,
                                          "end": 31755,
                                          "loc": {
                                            "start": {
                                              "line": 764,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 764,
                                              "column": 52
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 31740,
                                            "end": 31744,
                                            "loc": {
                                              "start": {
                                                "line": 764,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 764,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 31745,
                                            "end": 31755,
                                            "loc": {
                                              "start": {
                                                "line": 764,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 764,
                                                "column": 52
                                              }
                                            },
                                            "name": "isOnSketch"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 31756,
                                            "end": 31762,
                                            "loc": {
                                              "start": {
                                                "line": 764,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 764,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31765,
                                    "end": 31804,
                                    "loc": {
                                      "start": {
                                        "line": 764,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 766,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31783,
                                        "end": 31790,
                                        "loc": {
                                          "start": {
                                            "line": 765,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 765,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31817,
                                  "end": 31853,
                                  "loc": {
                                    "start": {
                                      "line": 767,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 767,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31817,
                                    "end": 31852,
                                    "loc": {
                                      "start": {
                                        "line": 767,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 767,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31817,
                                      "end": 31836,
                                      "loc": {
                                        "start": {
                                          "line": 767,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 767,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31817,
                                        "end": 31823,
                                        "loc": {
                                          "start": {
                                            "line": 767,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 767,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31824,
                                        "end": 31836,
                                        "loc": {
                                          "start": {
                                            "line": 767,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 767,
                                            "column": 31
                                          }
                                        },
                                        "name": "addStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31837,
                                        "end": 31844,
                                        "loc": {
                                          "start": {
                                            "line": 767,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 767,
                                            "column": 39
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 31846,
                                        "end": 31851,
                                        "loc": {
                                          "start": {
                                            "line": 767,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 767,
                                            "column": 46
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31865,
                            "end": 31869,
                            "loc": {
                              "start": {
                                "line": 768,
                                "column": 11
                              },
                              "end": {
                                "line": 768,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31880,
                          "end": 31957,
                          "loc": {
                            "start": {
                              "line": 769,
                              "column": 8
                            },
                            "end": {
                              "line": 769,
                              "column": 85
                            }
                          },
                          "range": [
                            31880,
                            31957
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31966,
                      "end": 32048,
                      "loc": {
                        "start": {
                          "line": 770,
                          "column": 8
                        },
                        "end": {
                          "line": 771,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31971,
                        "end": 31981,
                        "loc": {
                          "start": {
                            "line": 770,
                            "column": 13
                          },
                          "end": {
                            "line": 770,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31975,
                            "end": 31981,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 17
                              },
                              "end": {
                                "line": 770,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31975,
                              "end": 31981,
                              "loc": {
                                "start": {
                                  "line": 770,
                                  "column": 17
                                },
                                "end": {
                                  "line": 770,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31985,
                        "end": 32010,
                        "loc": {
                          "start": {
                            "line": 770,
                            "column": 27
                          },
                          "end": {
                            "line": 770,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31985,
                          "end": 32008,
                          "loc": {
                            "start": {
                              "line": 770,
                              "column": 27
                            },
                            "end": {
                              "line": 770,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31985,
                            "end": 31989,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 27
                              },
                              "end": {
                                "line": 770,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31990,
                            "end": 32008,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 32
                              },
                              "end": {
                                "line": 770,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 32024,
                        "end": 32048,
                        "loc": {
                          "start": {
                            "line": 771,
                            "column": 12
                          },
                          "end": {
                            "line": 771,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32024,
                          "end": 32047,
                          "loc": {
                            "start": {
                              "line": 771,
                              "column": 12
                            },
                            "end": {
                              "line": 771,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32024,
                            "end": 32045,
                            "loc": {
                              "start": {
                                "line": 771,
                                "column": 12
                              },
                              "end": {
                                "line": 771,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 32024,
                              "end": 32030,
                              "loc": {
                                "start": {
                                  "line": 771,
                                  "column": 12
                                },
                                "end": {
                                  "line": 771,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32031,
                              "end": 32045,
                              "loc": {
                                "start": {
                                  "line": 771,
                                  "column": 19
                                },
                                "end": {
                                  "line": 771,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31880,
                          "end": 31957,
                          "loc": {
                            "start": {
                              "line": 769,
                              "column": 8
                            },
                            "end": {
                              "line": 769,
                              "column": 85
                            }
                          },
                          "range": [
                            31880,
                            31957
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32060,
              "end": 32255,
              "loc": {
                "start": {
                  "line": 774,
                  "column": 4
                },
                "end": {
                  "line": 780,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32060,
                "end": 32076,
                "loc": {
                  "start": {
                    "line": 774,
                    "column": 4
                  },
                  "end": {
                    "line": 774,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32076,
                "end": 32255,
                "loc": {
                  "start": {
                    "line": 774,
                    "column": 20
                  },
                  "end": {
                    "line": 780,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32079,
                  "end": 32255,
                  "loc": {
                    "start": {
                      "line": 774,
                      "column": 23
                    },
                    "end": {
                      "line": 780,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 32089,
                      "end": 32225,
                      "loc": {
                        "start": {
                          "line": 775,
                          "column": 8
                        },
                        "end": {
                          "line": 778,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 32093,
                        "end": 32129,
                        "loc": {
                          "start": {
                            "line": 775,
                            "column": 12
                          },
                          "end": {
                            "line": 775,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 32093,
                          "end": 32120,
                          "loc": {
                            "start": {
                              "line": 775,
                              "column": 12
                            },
                            "end": {
                              "line": 775,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32093,
                            "end": 32106,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 12
                              },
                              "end": {
                                "line": 775,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32093,
                              "end": 32097,
                              "loc": {
                                "start": {
                                  "line": 775,
                                  "column": 12
                                },
                                "end": {
                                  "line": 775,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32098,
                              "end": 32106,
                              "loc": {
                                "start": {
                                  "line": 775,
                                  "column": 17
                                },
                                "end": {
                                  "line": 775,
                                  "column": 25
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32107,
                            "end": 32120,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 26
                              },
                              "end": {
                                "line": 775,
                                "column": 39
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "ThisExpression",
                          "start": 32125,
                          "end": 32129,
                          "loc": {
                            "start": {
                              "line": 775,
                              "column": 44
                            },
                            "end": {
                              "line": 775,
                              "column": 48
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 32163,
                        "end": 32182,
                        "loc": {
                          "start": {
                            "line": 776,
                            "column": 12
                          },
                          "end": {
                            "line": 776,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32163,
                          "end": 32181,
                          "loc": {
                            "start": {
                              "line": 776,
                              "column": 12
                            },
                            "end": {
                              "line": 776,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32163,
                            "end": 32179,
                            "loc": {
                              "start": {
                                "line": 776,
                                "column": 12
                              },
                              "end": {
                                "line": 776,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32163,
                              "end": 32167,
                              "loc": {
                                "start": {
                                  "line": 776,
                                  "column": 12
                                },
                                "end": {
                                  "line": 776,
                                  "column": 16
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32168,
                              "end": 32179,
                              "loc": {
                                "start": {
                                  "line": 776,
                                  "column": 17
                                },
                                "end": {
                                  "line": 776,
                                  "column": 28
                                }
                              },
                              "name": "infiniteBox"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " FIXME less hacky",
                            "start": 32131,
                            "end": 32150,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 50
                              },
                              "end": {
                                "line": 775,
                                "column": 69
                              }
                            },
                            "range": [
                              32131,
                              32150
                            ]
                          }
                        ]
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 32208,
                        "end": 32225,
                        "loc": {
                          "start": {
                            "line": 778,
                            "column": 12
                          },
                          "end": {
                            "line": 778,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32208,
                          "end": 32224,
                          "loc": {
                            "start": {
                              "line": 778,
                              "column": 12
                            },
                            "end": {
                              "line": 778,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32208,
                            "end": 32222,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 12
                              },
                              "end": {
                                "line": 778,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32208,
                              "end": 32212,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 12
                                },
                                "end": {
                                  "line": 778,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32213,
                              "end": 32222,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 17
                                },
                                "end": {
                                  "line": 778,
                                  "column": 26
                                }
                              },
                              "name": "updateBox"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32234,
                      "end": 32249,
                      "loc": {
                        "start": {
                          "line": 779,
                          "column": 8
                        },
                        "end": {
                          "line": 779,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32234,
                        "end": 32248,
                        "loc": {
                          "start": {
                            "line": 779,
                            "column": 8
                          },
                          "end": {
                            "line": 779,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32234,
                          "end": 32246,
                          "loc": {
                            "start": {
                              "line": 779,
                              "column": 8
                            },
                            "end": {
                              "line": 779,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 32234,
                            "end": 32238,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 8
                              },
                              "end": {
                                "line": 779,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32239,
                            "end": 32246,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 13
                              },
                              "end": {
                                "line": 779,
                                "column": 20
                              }
                            },
                            "name": "showBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32261,
              "end": 32478,
              "loc": {
                "start": {
                  "line": 782,
                  "column": 4
                },
                "end": {
                  "line": 787,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32261,
                "end": 32277,
                "loc": {
                  "start": {
                    "line": 782,
                    "column": 4
                  },
                  "end": {
                    "line": 782,
                    "column": 20
                  }
                },
                "name": "updateFromServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32277,
                "end": 32478,
                "loc": {
                  "start": {
                    "line": 782,
                    "column": 20
                  },
                  "end": {
                    "line": 787,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32280,
                  "end": 32478,
                  "loc": {
                    "start": {
                      "line": 782,
                      "column": 23
                    },
                    "end": {
                      "line": 787,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 32290,
                      "end": 32318,
                      "loc": {
                        "start": {
                          "line": 783,
                          "column": 8
                        },
                        "end": {
                          "line": 783,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32296,
                          "end": 32317,
                          "loc": {
                            "start": {
                              "line": 783,
                              "column": 14
                            },
                            "end": {
                              "line": 783,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32296,
                            "end": 32300,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 14
                              },
                              "end": {
                                "line": 783,
                                "column": 18
                              }
                            },
                            "name": "part"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 32303,
                            "end": 32317,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 21
                              },
                              "end": {
                                "line": 783,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32303,
                              "end": 32315,
                              "loc": {
                                "start": {
                                  "line": 783,
                                  "column": 21
                                },
                                "end": {
                                  "line": 783,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32303,
                                "end": 32307,
                                "loc": {
                                  "start": {
                                    "line": 783,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32308,
                                "end": 32315,
                                "loc": {
                                  "start": {
                                    "line": 783,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 33
                                  }
                                },
                                "name": "getPart"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "const"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 32327,
                      "end": 32472,
                      "loc": {
                        "start": {
                          "line": 784,
                          "column": 8
                        },
                        "end": {
                          "line": 786,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 32334,
                        "end": 32471,
                        "loc": {
                          "start": {
                            "line": 784,
                            "column": 15
                          },
                          "end": {
                            "line": 786,
                            "column": 9
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32334,
                          "end": 32401,
                          "loc": {
                            "start": {
                              "line": 784,
                              "column": 15
                            },
                            "end": {
                              "line": 784,
                              "column": 82
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 32334,
                            "end": 32397,
                            "loc": {
                              "start": {
                                "line": 784,
                                "column": 15
                              },
                              "end": {
                                "line": 784,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32334,
                              "end": 32350,
                              "loc": {
                                "start": {
                                  "line": 784,
                                  "column": 15
                                },
                                "end": {
                                  "line": 784,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 32334,
                                "end": 32343,
                                "loc": {
                                  "start": {
                                    "line": 784,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 784,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32344,
                                "end": 32350,
                                "loc": {
                                  "start": {
                                    "line": 784,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 784,
                                    "column": 31
                                  }
                                },
                                "name": "Return"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 32351,
                                "end": 32396,
                                "loc": {
                                  "start": {
                                    "line": 784,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 784,
                                    "column": 77
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 32351,
                                  "end": 32384,
                                  "loc": {
                                    "start": {
                                      "line": 784,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 784,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 32351,
                                    "end": 32361,
                                    "loc": {
                                      "start": {
                                        "line": 784,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 784,
                                        "column": 42
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 32362,
                                    "end": 32384,
                                    "loc": {
                                      "start": {
                                        "line": 784,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 784,
                                        "column": 65
                                      }
                                    },
                                    "name": "CreateSketchDimensions"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 32385,
                                    "end": 32389,
                                    "loc": {
                                      "start": {
                                        "line": 784,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 784,
                                        "column": 70
                                      }
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 32391,
                                    "end": 32395,
                                    "loc": {
                                      "start": {
                                        "line": 784,
                                        "column": 72
                                      },
                                      "end": {
                                        "line": 784,
                                        "column": 76
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32398,
                            "end": 32401,
                            "loc": {
                              "start": {
                                "line": 784,
                                "column": 79
                              },
                              "end": {
                                "line": 784,
                                "column": 82
                              }
                            },
                            "name": "and"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 32415,
                            "end": 32461,
                            "loc": {
                              "start": {
                                "line": 785,
                                "column": 12
                              },
                              "end": {
                                "line": 785,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32415,
                              "end": 32446,
                              "loc": {
                                "start": {
                                  "line": 785,
                                  "column": 12
                                },
                                "end": {
                                  "line": 785,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 32415,
                                "end": 32441,
                                "loc": {
                                  "start": {
                                    "line": 785,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 785,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 32415,
                                  "end": 32435,
                                  "loc": {
                                    "start": {
                                      "line": 785,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 785,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 32415,
                                    "end": 32424,
                                    "loc": {
                                      "start": {
                                        "line": 785,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 785,
                                        "column": 21
                                      }
                                    },
                                    "name": "Statement"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 32425,
                                    "end": 32435,
                                    "loc": {
                                      "start": {
                                        "line": 785,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 785,
                                        "column": 32
                                      }
                                    },
                                    "name": "JSONExport"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 32436,
                                    "end": 32440,
                                    "loc": {
                                      "start": {
                                        "line": 785,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 785,
                                        "column": 37
                                      }
                                    },
                                    "name": "part"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32442,
                                "end": 32446,
                                "loc": {
                                  "start": {
                                    "line": 785,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 785,
                                    "column": 43
                                  }
                                },
                                "name": "then"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 32447,
                                "end": 32460,
                                "loc": {
                                  "start": {
                                    "line": 785,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 785,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 32447,
                                  "end": 32454,
                                  "loc": {
                                    "start": {
                                      "line": 785,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 785,
                                      "column": 51
                                    }
                                  },
                                  "name": "parseTo"
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 32455,
                                    "end": 32459,
                                    "loc": {
                                      "start": {
                                        "line": 785,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 785,
                                        "column": 56
                                      }
                                    },
                                    "name": "part"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32484,
              "end": 32861,
              "loc": {
                "start": {
                  "line": 789,
                  "column": 4
                },
                "end": {
                  "line": 796,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32490,
                "end": 32506,
                "loc": {
                  "start": {
                    "line": 789,
                    "column": 10
                  },
                  "end": {
                    "line": 789,
                    "column": 26
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32506,
                "end": 32861,
                "loc": {
                  "start": {
                    "line": 789,
                    "column": 26
                  },
                  "end": {
                    "line": 796,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32509,
                  "end": 32861,
                  "loc": {
                    "start": {
                      "line": 789,
                      "column": 29
                    },
                    "end": {
                      "line": 796,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 32675,
                      "end": 32829,
                      "loc": {
                        "start": {
                          "line": 792,
                          "column": 8
                        },
                        "end": {
                          "line": 794,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32681,
                          "end": 32828,
                          "loc": {
                            "start": {
                              "line": 792,
                              "column": 14
                            },
                            "end": {
                              "line": 794,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32681,
                            "end": 32687,
                            "loc": {
                              "start": {
                                "line": 792,
                                "column": 14
                              },
                              "end": {
                                "line": 792,
                                "column": 20
                              }
                            },
                            "name": "result",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 32690,
                            "end": 32828,
                            "loc": {
                              "start": {
                                "line": 792,
                                "column": 23
                              },
                              "end": {
                                "line": 794,
                                "column": 39
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 32696,
                              "end": 32828,
                              "loc": {
                                "start": {
                                  "line": 792,
                                  "column": 29
                                },
                                "end": {
                                  "line": 794,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 32696,
                                "end": 32806,
                                "loc": {
                                  "start": {
                                    "line": 792,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 32696,
                                  "end": 32798,
                                  "loc": {
                                    "start": {
                                      "line": 792,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 794,
                                      "column": 9
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 32696,
                                    "end": 32751,
                                    "loc": {
                                      "start": {
                                        "line": 792,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 792,
                                        "column": 84
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 32696,
                                      "end": 32747,
                                      "loc": {
                                        "start": {
                                          "line": 792,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 792,
                                          "column": 80
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 32696,
                                        "end": 32712,
                                        "loc": {
                                          "start": {
                                            "line": 792,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 792,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 32696,
                                          "end": 32705,
                                          "loc": {
                                            "start": {
                                              "line": 792,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 792,
                                              "column": 38
                                            }
                                          },
                                          "name": "Statement"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 32706,
                                          "end": 32712,
                                          "loc": {
                                            "start": {
                                              "line": 792,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 792,
                                              "column": 45
                                            }
                                          },
                                          "name": "Return"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "CallExpression",
                                          "start": 32713,
                                          "end": 32746,
                                          "loc": {
                                            "start": {
                                              "line": 792,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 792,
                                              "column": 79
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 32713,
                                            "end": 32740,
                                            "loc": {
                                              "start": {
                                                "line": 792,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 792,
                                                "column": 73
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 32713,
                                              "end": 32723,
                                              "loc": {
                                                "start": {
                                                  "line": 792,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 792,
                                                  "column": 56
                                                }
                                              },
                                              "name": "Expression"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 32724,
                                              "end": 32740,
                                              "loc": {
                                                "start": {
                                                  "line": 792,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 792,
                                                  "column": 73
                                                }
                                              },
                                              "name": "SolveConstraints"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ThisExpression",
                                              "start": 32741,
                                              "end": 32745,
                                              "loc": {
                                                "start": {
                                                  "line": 792,
                                                  "column": 74
                                                },
                                                "end": {
                                                  "line": 792,
                                                  "column": 78
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 32748,
                                      "end": 32751,
                                      "loc": {
                                        "start": {
                                          "line": 792,
                                          "column": 81
                                        },
                                        "end": {
                                          "line": 792,
                                          "column": 84
                                        }
                                      },
                                      "name": "and"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 32765,
                                      "end": 32788,
                                      "loc": {
                                        "start": {
                                          "line": 793,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 793,
                                          "column": 35
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 32765,
                                        "end": 32786,
                                        "loc": {
                                          "start": {
                                            "line": 793,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 793,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 32765,
                                          "end": 32769,
                                          "loc": {
                                            "start": {
                                              "line": 793,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 793,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 32770,
                                          "end": 32786,
                                          "loc": {
                                            "start": {
                                              "line": 793,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 793,
                                              "column": 33
                                            }
                                          },
                                          "name": "updateFromServer"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 32799,
                                  "end": 32806,
                                  "loc": {
                                    "start": {
                                      "line": 794,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 794,
                                      "column": 17
                                    }
                                  },
                                  "name": "execute"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 32807,
                                  "end": 32827,
                                  "loc": {
                                    "start": {
                                      "line": 794,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 794,
                                      "column": 38
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 32807,
                                    "end": 32820,
                                    "loc": {
                                      "start": {
                                        "line": 794,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 794,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 32807,
                                      "end": 32811,
                                      "loc": {
                                        "start": {
                                          "line": 794,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 794,
                                          "column": 22
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 32812,
                                      "end": 32820,
                                      "loc": {
                                        "start": {
                                          "line": 794,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 794,
                                          "column": 31
                                        }
                                      },
                                      "name": "sketcher"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 32821,
                                    "end": 32827,
                                    "loc": {
                                      "start": {
                                        "line": 794,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 794,
                                        "column": 38
                                      }
                                    },
                                    "name": "socket"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "const",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " return SolveConstraints result after calling updateFromServer",
                          "start": 32519,
                          "end": 32583,
                          "loc": {
                            "start": {
                              "line": 790,
                              "column": 8
                            },
                            "end": {
                              "line": 790,
                              "column": 72
                            }
                          },
                          "range": [
                            32519,
                            32583
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " see SketcherInterface.cclass for description of return values (0, 1, 2)",
                          "start": 32592,
                          "end": 32666,
                          "loc": {
                            "start": {
                              "line": 791,
                              "column": 8
                            },
                            "end": {
                              "line": 791,
                              "column": 82
                            }
                          },
                          "range": [
                            32592,
                            32666
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 32838,
                      "end": 32855,
                      "loc": {
                        "start": {
                          "line": 795,
                          "column": 8
                        },
                        "end": {
                          "line": 795,
                          "column": 25
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 32845,
                        "end": 32854,
                        "loc": {
                          "start": {
                            "line": 795,
                            "column": 15
                          },
                          "end": {
                            "line": 795,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 32845,
                          "end": 32851,
                          "loc": {
                            "start": {
                              "line": 795,
                              "column": 15
                            },
                            "end": {
                              "line": 795,
                              "column": 21
                            }
                          },
                          "name": "result"
                        },
                        "property": {
                          "type": "Literal",
                          "start": 32852,
                          "end": 32853,
                          "loc": {
                            "start": {
                              "line": 795,
                              "column": 22
                            },
                            "end": {
                              "line": 795,
                              "column": 23
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "computed": true
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 32867,
                  "end": 32925,
                  "loc": {
                    "start": {
                      "line": 798,
                      "column": 4
                    },
                    "end": {
                      "line": 798,
                      "column": 62
                    }
                  },
                  "range": [
                    32867,
                    32925
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 32930,
                  "end": 33001,
                  "loc": {
                    "start": {
                      "line": 799,
                      "column": 4
                    },
                    "end": {
                      "line": 799,
                      "column": 75
                    }
                  },
                  "range": [
                    32930,
                    33001
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 33006,
              "end": 33553,
              "loc": {
                "start": {
                  "line": 800,
                  "column": 4
                },
                "end": {
                  "line": 819,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33013,
                "end": 33035,
                "loc": {
                  "start": {
                    "line": 800,
                    "column": 11
                  },
                  "end": {
                    "line": 800,
                    "column": 33
                  }
                },
                "name": "ForObjectsWithChildren"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33035,
                "end": 33553,
                "loc": {
                  "start": {
                    "line": 800,
                    "column": 33
                  },
                  "end": {
                    "line": 819,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 33036,
                    "end": 33040,
                    "loc": {
                      "start": {
                        "line": 800,
                        "column": 34
                      },
                      "end": {
                        "line": 800,
                        "column": 38
                      }
                    },
                    "name": "objs"
                  },
                  {
                    "type": "Identifier",
                    "start": 33042,
                    "end": 33050,
                    "loc": {
                      "start": {
                        "line": 800,
                        "column": 40
                      },
                      "end": {
                        "line": 800,
                        "column": 48
                      }
                    },
                    "name": "callback"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 33052,
                  "end": 33553,
                  "loc": {
                    "start": {
                      "line": 800,
                      "column": 50
                    },
                    "end": {
                      "line": 819,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 33062,
                      "end": 33085,
                      "loc": {
                        "start": {
                          "line": 801,
                          "column": 8
                        },
                        "end": {
                          "line": 801,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33066,
                          "end": 33084,
                          "loc": {
                            "start": {
                              "line": 801,
                              "column": 12
                            },
                            "end": {
                              "line": 801,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33066,
                            "end": 33072,
                            "loc": {
                              "start": {
                                "line": 801,
                                "column": 12
                              },
                              "end": {
                                "line": 801,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 33075,
                            "end": 33084,
                            "loc": {
                              "start": {
                                "line": 801,
                                "column": 21
                              },
                              "end": {
                                "line": 801,
                                "column": 30
                              }
                            },
                            "name": "undefined"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 33094,
                      "end": 33195,
                      "loc": {
                        "start": {
                          "line": 802,
                          "column": 8
                        },
                        "end": {
                          "line": 805,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 33098,
                        "end": 33107,
                        "loc": {
                          "start": {
                            "line": 802,
                            "column": 12
                          },
                          "end": {
                            "line": 802,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 33099,
                          "end": 33107,
                          "loc": {
                            "start": {
                              "line": 802,
                              "column": 13
                            },
                            "end": {
                              "line": 802,
                              "column": 21
                            }
                          },
                          "name": "callback"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 33109,
                        "end": 33195,
                        "loc": {
                          "start": {
                            "line": 802,
                            "column": 23
                          },
                          "end": {
                            "line": 805,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 33123,
                            "end": 33135,
                            "loc": {
                              "start": {
                                "line": 803,
                                "column": 12
                              },
                              "end": {
                                "line": 803,
                                "column": 24
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33123,
                              "end": 33134,
                              "loc": {
                                "start": {
                                  "line": 803,
                                  "column": 12
                                },
                                "end": {
                                  "line": 803,
                                  "column": 23
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33123,
                                "end": 33129,
                                "loc": {
                                  "start": {
                                    "line": 803,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 803,
                                    "column": 18
                                  }
                                },
                                "name": "result"
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 33132,
                                "end": 33134,
                                "loc": {
                                  "start": {
                                    "line": 803,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 803,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 33148,
                            "end": 33185,
                            "loc": {
                              "start": {
                                "line": 804,
                                "column": 12
                              },
                              "end": {
                                "line": 804,
                                "column": 49
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33148,
                              "end": 33184,
                              "loc": {
                                "start": {
                                  "line": 804,
                                  "column": 12
                                },
                                "end": {
                                  "line": 804,
                                  "column": 48
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33148,
                                "end": 33156,
                                "loc": {
                                  "start": {
                                    "line": 804,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 804,
                                    "column": 20
                                  }
                                },
                                "name": "callback"
                              },
                              "right": {
                                "type": "ArrowFunctionExpression",
                                "start": 33160,
                                "end": 33183,
                                "loc": {
                                  "start": {
                                    "line": 804,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 804,
                                    "column": 47
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 33160,
                                    "end": 33163,
                                    "loc": {
                                      "start": {
                                        "line": 804,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 804,
                                        "column": 27
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 33167,
                                  "end": 33183,
                                  "loc": {
                                    "start": {
                                      "line": 804,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 804,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 33167,
                                    "end": 33178,
                                    "loc": {
                                      "start": {
                                        "line": 804,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 804,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33167,
                                      "end": 33173,
                                      "loc": {
                                        "start": {
                                          "line": 804,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 804,
                                          "column": 37
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33174,
                                      "end": 33178,
                                      "loc": {
                                        "start": {
                                          "line": 804,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 804,
                                          "column": 42
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 33179,
                                      "end": 33182,
                                      "loc": {
                                        "start": {
                                          "line": 804,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 804,
                                          "column": 46
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ]
                                },
                                "parenthesizedExpression": true
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33205,
                      "end": 33228,
                      "loc": {
                        "start": {
                          "line": 807,
                          "column": 8
                        },
                        "end": {
                          "line": 807,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 33205,
                        "end": 33227,
                        "loc": {
                          "start": {
                            "line": 807,
                            "column": 8
                          },
                          "end": {
                            "line": 807,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 33205,
                          "end": 33209,
                          "loc": {
                            "start": {
                              "line": 807,
                              "column": 8
                            },
                            "end": {
                              "line": 807,
                              "column": 12
                            }
                          },
                          "name": "objs"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 33212,
                          "end": 33227,
                          "loc": {
                            "start": {
                              "line": 807,
                              "column": 15
                            },
                            "end": {
                              "line": 807,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33212,
                            "end": 33221,
                            "loc": {
                              "start": {
                                "line": 807,
                                "column": 15
                              },
                              "end": {
                                "line": 807,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 33212,
                              "end": 33214,
                              "loc": {
                                "start": {
                                  "line": 807,
                                  "column": 15
                                },
                                "end": {
                                  "line": 807,
                                  "column": 17
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33215,
                              "end": 33221,
                              "loc": {
                                "start": {
                                  "line": 807,
                                  "column": 18
                                },
                                "end": {
                                  "line": 807,
                                  "column": 24
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 33222,
                              "end": 33226,
                              "loc": {
                                "start": {
                                  "line": 807,
                                  "column": 25
                                },
                                "end": {
                                  "line": 807,
                                  "column": 29
                                }
                              },
                              "name": "objs"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33237,
                      "end": 33523,
                      "loc": {
                        "start": {
                          "line": 808,
                          "column": 8
                        },
                        "end": {
                          "line": 816,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 33237,
                        "end": 33522,
                        "loc": {
                          "start": {
                            "line": 808,
                            "column": 8
                          },
                          "end": {
                            "line": 816,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33237,
                          "end": 33249,
                          "loc": {
                            "start": {
                              "line": 808,
                              "column": 8
                            },
                            "end": {
                              "line": 808,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 33237,
                            "end": 33241,
                            "loc": {
                              "start": {
                                "line": 808,
                                "column": 8
                              },
                              "end": {
                                "line": 808,
                                "column": 12
                              }
                            },
                            "name": "objs"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33242,
                            "end": 33249,
                            "loc": {
                              "start": {
                                "line": 808,
                                "column": 13
                              },
                              "end": {
                                "line": 808,
                                "column": 20
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 33250,
                            "end": 33521,
                            "loc": {
                              "start": {
                                "line": 808,
                                "column": 21
                              },
                              "end": {
                                "line": 816,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 33250,
                                "end": 33253,
                                "loc": {
                                  "start": {
                                    "line": 808,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 808,
                                    "column": 24
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 33257,
                              "end": 33521,
                              "loc": {
                                "start": {
                                  "line": 808,
                                  "column": 28
                                },
                                "end": {
                                  "line": 816,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 33271,
                                  "end": 33288,
                                  "loc": {
                                    "start": {
                                      "line": 809,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 809,
                                      "column": 29
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 33275,
                                    "end": 33279,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 20
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 33276,
                                      "end": 33279,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 20
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33281,
                                    "end": 33288,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 29
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 33301,
                                  "end": 33315,
                                  "loc": {
                                    "start": {
                                      "line": 810,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 810,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 33301,
                                    "end": 33314,
                                    "loc": {
                                      "start": {
                                        "line": 810,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 810,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 33301,
                                      "end": 33309,
                                      "loc": {
                                        "start": {
                                          "line": 810,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 810,
                                          "column": 20
                                        }
                                      },
                                      "name": "callback"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 33310,
                                        "end": 33313,
                                        "loc": {
                                          "start": {
                                            "line": 810,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 810,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33328,
                                  "end": 33361,
                                  "loc": {
                                    "start": {
                                      "line": 811,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 811,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 33332,
                                    "end": 33352,
                                    "loc": {
                                      "start": {
                                        "line": 811,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 811,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 33332,
                                      "end": 33335,
                                      "loc": {
                                        "start": {
                                          "line": 811,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 811,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 33347,
                                      "end": 33352,
                                      "loc": {
                                        "start": {
                                          "line": 811,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 811,
                                          "column": 36
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33354,
                                    "end": 33361,
                                    "loc": {
                                      "start": {
                                        "line": 811,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 811,
                                        "column": 45
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33374,
                                  "end": 33435,
                                  "loc": {
                                    "start": {
                                      "line": 812,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 813,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33378,
                                    "end": 33388,
                                    "loc": {
                                      "start": {
                                        "line": 812,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 812,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33378,
                                      "end": 33381,
                                      "loc": {
                                        "start": {
                                          "line": 812,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 812,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33382,
                                      "end": 33388,
                                      "loc": {
                                        "start": {
                                          "line": 812,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 812,
                                          "column": 26
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33406,
                                    "end": 33435,
                                    "loc": {
                                      "start": {
                                        "line": 813,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 813,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33406,
                                      "end": 33434,
                                      "loc": {
                                        "start": {
                                          "line": 813,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 813,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 33406,
                                        "end": 33424,
                                        "loc": {
                                          "start": {
                                            "line": 813,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 813,
                                            "column": 34
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 33406,
                                          "end": 33416,
                                          "loc": {
                                            "start": {
                                              "line": 813,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 813,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33406,
                                            "end": 33409,
                                            "loc": {
                                              "start": {
                                                "line": 813,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 813,
                                                "column": 19
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33410,
                                            "end": 33416,
                                            "loc": {
                                              "start": {
                                                "line": 813,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 813,
                                                "column": 26
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 33417,
                                          "end": 33424,
                                          "loc": {
                                            "start": {
                                              "line": 813,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 813,
                                              "column": 34
                                            }
                                          },
                                          "name": "forEach"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 33425,
                                          "end": 33433,
                                          "loc": {
                                            "start": {
                                              "line": 813,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 813,
                                              "column": 43
                                            }
                                          },
                                          "name": "callback"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33448,
                                  "end": 33511,
                                  "loc": {
                                    "start": {
                                      "line": 814,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 815,
                                      "column": 42
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33452,
                                    "end": 33467,
                                    "loc": {
                                      "start": {
                                        "line": 814,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 814,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33452,
                                      "end": 33455,
                                      "loc": {
                                        "start": {
                                          "line": 814,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 814,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33456,
                                      "end": 33467,
                                      "loc": {
                                        "start": {
                                          "line": 814,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 814,
                                          "column": 31
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33485,
                                    "end": 33511,
                                    "loc": {
                                      "start": {
                                        "line": 815,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 815,
                                        "column": 42
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33485,
                                      "end": 33510,
                                      "loc": {
                                        "start": {
                                          "line": 815,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 815,
                                          "column": 41
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 33485,
                                        "end": 33493,
                                        "loc": {
                                          "start": {
                                            "line": 815,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 815,
                                            "column": 24
                                          }
                                        },
                                        "name": "callback"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 33494,
                                          "end": 33509,
                                          "loc": {
                                            "start": {
                                              "line": 815,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 815,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33494,
                                            "end": 33497,
                                            "loc": {
                                              "start": {
                                                "line": 815,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 815,
                                                "column": 28
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33498,
                                            "end": 33509,
                                            "loc": {
                                              "start": {
                                                "line": 815,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 815,
                                                "column": 40
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 33533,
                      "end": 33547,
                      "loc": {
                        "start": {
                          "line": 818,
                          "column": 8
                        },
                        "end": {
                          "line": 818,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 33540,
                        "end": 33546,
                        "loc": {
                          "start": {
                            "line": 818,
                            "column": 15
                          },
                          "end": {
                            "line": 818,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 32867,
                  "end": 32925,
                  "loc": {
                    "start": {
                      "line": 798,
                      "column": 4
                    },
                    "end": {
                      "line": 798,
                      "column": 62
                    }
                  },
                  "range": [
                    32867,
                    32925
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 32930,
                  "end": 33001,
                  "loc": {
                    "start": {
                      "line": 799,
                      "column": 4
                    },
                    "end": {
                      "line": 799,
                      "column": 75
                    }
                  },
                  "range": [
                    32930,
                    33001
                  ]
                }
              ]
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 33557,
      "end": 33607,
      "loc": {
        "start": {
          "line": 822,
          "column": 0
        },
        "end": {
          "line": 822,
          "column": 50
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 33557,
        "end": 33606,
        "loc": {
          "start": {
            "line": 822,
            "column": 0
          },
          "end": {
            "line": 822,
            "column": 49
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 33557,
          "end": 33597,
          "loc": {
            "start": {
              "line": 822,
              "column": 0
            },
            "end": {
              "line": 822,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 33557,
            "end": 33584,
            "loc": {
              "start": {
                "line": 822,
                "column": 0
              },
              "end": {
                "line": 822,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 33557,
              "end": 33571,
              "loc": {
                "start": {
                  "line": 822,
                  "column": 0
                },
                "end": {
                  "line": 822,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 33572,
              "end": 33584,
              "loc": {
                "start": {
                  "line": 822,
                  "column": 15
                },
                "end": {
                  "line": 822,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 33585,
            "end": 33596,
            "loc": {
              "start": {
                "line": 822,
                "column": 28
              },
              "end": {
                "line": 822,
                "column": 39
              }
            },
            "value": "CC_Sketch",
            "rawValue": "CC_Sketch",
            "raw": "'CC_Sketch'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 33600,
          "end": 33606,
          "loc": {
            "start": {
              "line": 822,
              "column": 43
            },
            "end": {
              "line": 822,
              "column": 49
            }
          },
          "name": "Sketch"
        }
      }
    }
  ]
}