{
  "type": "File",
  "start": 0,
  "end": 9622,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 324,
      "column": 0
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 9622,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 324,
        "column": 0
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "ImportDeclaration",
        "start": 0,
        "end": 32,
        "loc": {
          "start": {
            "line": 1,
            "column": 0
          },
          "end": {
            "line": 1,
            "column": 32
          }
        },
        "specifiers": [
          {
            "type": "ImportSpecifier",
            "start": 8,
            "end": 12,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 12
              }
            },
            "imported": {
              "type": "Identifier",
              "start": 8,
              "end": 12,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 8
                },
                "end": {
                  "line": 1,
                  "column": 12
                },
                "identifierName": "Long"
              },
              "name": "Long"
            },
            "local": {
              "type": "Identifier",
              "start": 8,
              "end": 12,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 8
                },
                "end": {
                  "line": 1,
                  "column": 12
                },
                "identifierName": "Long"
              },
              "name": "Long"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 19,
          "end": 31,
          "loc": {
            "start": {
              "line": 1,
              "column": 19
            },
            "end": {
              "line": 1,
              "column": 31
            }
          },
          "extra": {
            "rawValue": "bytebuffer",
            "raw": "\"bytebuffer\""
          },
          "value": "bytebuffer"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 33,
        "end": 85,
        "loc": {
          "start": {
            "line": 2,
            "column": 0
          },
          "end": {
            "line": 2,
            "column": 52
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 40,
            "end": 50,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 17
              }
            },
            "local": {
              "type": "Identifier",
              "start": 40,
              "end": 50,
              "loc": {
                "start": {
                  "line": 2,
                  "column": 7
                },
                "end": {
                  "line": 2,
                  "column": 17
                },
                "identifierName": "ChainTypes"
              },
              "name": "ChainTypes"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 56,
          "end": 84,
          "loc": {
            "start": {
              "line": 2,
              "column": 23
            },
            "end": {
              "line": 2,
              "column": 51
            }
          },
          "extra": {
            "rawValue": "../../chain/src/ChainTypes",
            "raw": "\"../../chain/src/ChainTypes\""
          },
          "value": "../../chain/src/ChainTypes"
        }
      },
      {
        "type": "VariableDeclaration",
        "start": 87,
        "end": 123,
        "loc": {
          "start": {
            "line": 4,
            "column": 0
          },
          "end": {
            "line": 4,
            "column": 36
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 91,
            "end": 122,
            "loc": {
              "start": {
                "line": 4,
                "column": 4
              },
              "end": {
                "line": 4,
                "column": 35
              }
            },
            "id": {
              "type": "Identifier",
              "start": 91,
              "end": 103,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 4
                },
                "end": {
                  "line": 4,
                  "column": 16
                },
                "identifierName": "MAX_SAFE_INT"
              },
              "name": "MAX_SAFE_INT"
            },
            "init": {
              "type": "NumericLiteral",
              "start": 106,
              "end": 122,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 19
                },
                "end": {
                  "line": 4,
                  "column": 35
                }
              },
              "extra": {
                "rawValue": 9007199254740991,
                "raw": "9007199254740991"
              },
              "value": 9007199254740991
            }
          }
        ],
        "kind": "var"
      },
      {
        "type": "VariableDeclaration",
        "start": 124,
        "end": 161,
        "loc": {
          "start": {
            "line": 5,
            "column": 0
          },
          "end": {
            "line": 5,
            "column": 37
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 128,
            "end": 160,
            "loc": {
              "start": {
                "line": 5,
                "column": 4
              },
              "end": {
                "line": 5,
                "column": 36
              }
            },
            "id": {
              "type": "Identifier",
              "start": 128,
              "end": 140,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 4
                },
                "end": {
                  "line": 5,
                  "column": 16
                },
                "identifierName": "MIN_SAFE_INT"
              },
              "name": "MIN_SAFE_INT"
            },
            "init": {
              "type": "UnaryExpression",
              "start": 143,
              "end": 160,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 19
                },
                "end": {
                  "line": 5,
                  "column": 36
                }
              },
              "operator": "-",
              "prefix": true,
              "argument": {
                "type": "NumericLiteral",
                "start": 144,
                "end": 160,
                "loc": {
                  "start": {
                    "line": 5,
                    "column": 20
                  },
                  "end": {
                    "line": 5,
                    "column": 36
                  }
                },
                "extra": {
                  "rawValue": 9007199254740991,
                  "raw": "9007199254740991"
                },
                "value": 9007199254740991
              },
              "extra": {
                "parenthesizedArgument": false
              }
            }
          }
        ],
        "kind": "var",
        "trailingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n    Most validations are skipped and the value returned unchanged when an empty string, null, or undefined is encountered (except \"required\").\n\n    Validations support a string format for dealing with large numbers.\n",
            "start": 163,
            "end": 385,
            "loc": {
              "start": {
                "line": 7,
                "column": 0
              },
              "end": {
                "line": 11,
                "column": 2
              }
            }
          }
        ]
      },
      {
        "type": "Identifier",
        "start": 386,
        "end": 9600,
        "loc": {
          "start": {
            "line": 12,
            "column": 0
          },
          "end": {
            "line": 321,
            "column": 2
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 390,
            "end": 9599,
            "loc": {
              "start": {
                "line": 12,
                "column": 4
              },
              "end": {
                "line": 321,
                "column": 1
              }
            },
            "id": {
              "type": "Identifier",
              "start": 390,
              "end": 393,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 12,
                  "column": 7
                },
                "identifierName": "_my"
              },
              "name": "_my",
              "leadingComments": null
            },
            "init": {
              "type": "ObjectExpression",
              "start": 396,
              "end": 9599,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 10
                },
                "end": {
                  "line": 321,
                  "column": 1
                }
              },
              "properties": [
                {
                  "type": "ObjectProperty",
                  "start": 402,
                  "end": 489,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 4
                    },
                    "end": {
                      "line": 15,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 402,
                    "end": 410,
                    "loc": {
                      "start": {
                        "line": 13,
                        "column": 4
                      },
                      "end": {
                        "line": 13,
                        "column": 12
                      },
                      "identifierName": "is_empty"
                    },
                    "name": "is_empty"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 412,
                    "end": 489,
                    "loc": {
                      "start": {
                        "line": 13,
                        "column": 14
                      },
                      "end": {
                        "line": 15,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 421,
                        "end": 426,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 23
                          },
                          "end": {
                            "line": 13,
                            "column": 28
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 428,
                      "end": 489,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 30
                        },
                        "end": {
                          "line": 15,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 438,
                          "end": 483,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 53
                            }
                          },
                          "argument": {
                            "type": "LogicalExpression",
                            "start": 445,
                            "end": 482,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 15
                              },
                              "end": {
                                "line": 14,
                                "column": 52
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 445,
                              "end": 459,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 15
                                },
                                "end": {
                                  "line": 14,
                                  "column": 29
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 445,
                                "end": 450,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 20
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "operator": "===",
                              "right": {
                                "type": "NullLiteral",
                                "start": 455,
                                "end": 459,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 29
                                  }
                                }
                              }
                            },
                            "operator": "||",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 463,
                              "end": 482,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 33
                                },
                                "end": {
                                  "line": 14,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 463,
                                "end": 468,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 38
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "operator": "===",
                              "right": {
                                "type": "Identifier",
                                "start": 473,
                                "end": 482,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 52
                                  },
                                  "identifierName": "undefined"
                                },
                                "name": "undefined"
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 496,
                  "end": 674,
                  "loc": {
                    "start": {
                      "line": 17,
                      "column": 4
                    },
                    "end": {
                      "line": 22,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 496,
                    "end": 504,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 4
                      },
                      "end": {
                        "line": 17,
                        "column": 12
                      },
                      "identifierName": "required"
                    },
                    "name": "required"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 505,
                      "end": 510,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 13
                        },
                        "end": {
                          "line": 17,
                          "column": 18
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 512,
                      "end": 527,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 20
                        },
                        "end": {
                          "line": 17,
                          "column": 35
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 512,
                        "end": 522,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 20
                          },
                          "end": {
                            "line": 17,
                            "column": 30
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 525,
                        "end": 527,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 33
                          },
                          "end": {
                            "line": 17,
                            "column": 35
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 529,
                    "end": 674,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 37
                      },
                      "end": {
                        "line": 22,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 539,
                        "end": 646,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 8
                          },
                          "end": {
                            "line": 20,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 543,
                          "end": 563,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 12
                            },
                            "end": {
                              "line": 18,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 543,
                            "end": 556,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 12
                              },
                              "end": {
                                "line": 18,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 543,
                              "end": 547,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 12
                                },
                                "end": {
                                  "line": 18,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 548,
                              "end": 556,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 17
                                },
                                "end": {
                                  "line": 18,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 557,
                              "end": 562,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 26
                                },
                                "end": {
                                  "line": 18,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 565,
                          "end": 646,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 34
                            },
                            "end": {
                              "line": 20,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 579,
                              "end": 636,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 12
                                },
                                "end": {
                                  "line": 19,
                                  "column": 69
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 585,
                                "end": 635,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 68
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 589,
                                  "end": 594,
                                  "loc": {
                                    "start": {
                                      "line": 19,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 19,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 595,
                                    "end": 634,
                                    "loc": {
                                      "start": {
                                        "line": 19,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 19,
                                        "column": 67
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 613,
                                        "end": 623,
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 56
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 627,
                                        "end": 632,
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 65
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 596,
                                        "end": 611,
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 44
                                          }
                                        },
                                        "value": {
                                          "raw": "value required ",
                                          "cooked": "value required "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 624,
                                        "end": 625,
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 58
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 633,
                                        "end": 633,
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 66
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 655,
                        "end": 668,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 8
                          },
                          "end": {
                            "line": 21,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 662,
                          "end": 667,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 15
                            },
                            "end": {
                              "line": 21,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 681,
                  "end": 867,
                  "loc": {
                    "start": {
                      "line": 24,
                      "column": 4
                    },
                    "end": {
                      "line": 29,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 681,
                    "end": 693,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 4
                      },
                      "end": {
                        "line": 24,
                        "column": 16
                      },
                      "identifierName": "require_long"
                    },
                    "name": "require_long"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 694,
                      "end": 699,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 17
                        },
                        "end": {
                          "line": 24,
                          "column": 22
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 701,
                      "end": 716,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 24
                        },
                        "end": {
                          "line": 24,
                          "column": 39
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 701,
                        "end": 711,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 24
                          },
                          "end": {
                            "line": 24,
                            "column": 34
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 714,
                        "end": 716,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 37
                          },
                          "end": {
                            "line": 24,
                            "column": 39
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 718,
                    "end": 867,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 41
                      },
                      "end": {
                        "line": 29,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 728,
                        "end": 839,
                        "loc": {
                          "start": {
                            "line": 25,
                            "column": 8
                          },
                          "end": {
                            "line": 27,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 732,
                          "end": 751,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 31
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "CallExpression",
                            "start": 733,
                            "end": 751,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 13
                              },
                              "end": {
                                "line": 25,
                                "column": 31
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 733,
                              "end": 744,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 13
                                },
                                "end": {
                                  "line": 25,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 733,
                                "end": 737,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 17
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 738,
                                "end": 744,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 24
                                  },
                                  "identifierName": "isLong"
                                },
                                "name": "isLong"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 745,
                                "end": 750,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 30
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "extra": {
                            "parenthesizedArgument": false
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 753,
                          "end": 839,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 33
                            },
                            "end": {
                              "line": 27,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 767,
                              "end": 829,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 12
                                },
                                "end": {
                                  "line": 26,
                                  "column": 74
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 773,
                                "end": 828,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 73
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 777,
                                  "end": 782,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 783,
                                    "end": 827,
                                    "loc": {
                                      "start": {
                                        "line": 26,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 26,
                                        "column": 72
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 806,
                                        "end": 816,
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 61
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 820,
                                        "end": 825,
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 70
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 784,
                                        "end": 804,
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 49
                                          }
                                        },
                                        "value": {
                                          "raw": "Long value required ",
                                          "cooked": "Long value required "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 817,
                                        "end": 818,
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 63
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 826,
                                        "end": 826,
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 71
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 848,
                        "end": 861,
                        "loc": {
                          "start": {
                            "line": 28,
                            "column": 8
                          },
                          "end": {
                            "line": 28,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 855,
                          "end": 860,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 15
                            },
                            "end": {
                              "line": 28,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 874,
                  "end": 1098,
                  "loc": {
                    "start": {
                      "line": 31,
                      "column": 4
                    },
                    "end": {
                      "line": 39,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 874,
                    "end": 880,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 4
                      },
                      "end": {
                        "line": 31,
                        "column": 10
                      },
                      "identifierName": "string"
                    },
                    "name": "string"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 881,
                      "end": 886,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 11
                        },
                        "end": {
                          "line": 31,
                          "column": 16
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 888,
                    "end": 1098,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 18
                      },
                      "end": {
                        "line": 39,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 898,
                        "end": 961,
                        "loc": {
                          "start": {
                            "line": 32,
                            "column": 8
                          },
                          "end": {
                            "line": 34,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 902,
                          "end": 922,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 12
                            },
                            "end": {
                              "line": 32,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 902,
                            "end": 915,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 12
                              },
                              "end": {
                                "line": 32,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 902,
                              "end": 906,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 12
                                },
                                "end": {
                                  "line": 32,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 907,
                              "end": 915,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 17
                                },
                                "end": {
                                  "line": 32,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 916,
                              "end": 921,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 26
                                },
                                "end": {
                                  "line": 32,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 924,
                          "end": 961,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 34
                            },
                            "end": {
                              "line": 34,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 938,
                              "end": 951,
                              "loc": {
                                "start": {
                                  "line": 33,
                                  "column": 12
                                },
                                "end": {
                                  "line": 33,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 945,
                                "end": 950,
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 970,
                        "end": 1070,
                        "loc": {
                          "start": {
                            "line": 35,
                            "column": 8
                          },
                          "end": {
                            "line": 37,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 974,
                          "end": 999,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 12
                            },
                            "end": {
                              "line": 35,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 974,
                            "end": 986,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 12
                              },
                              "end": {
                                "line": 35,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 981,
                              "end": 986,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 19
                                },
                                "end": {
                                  "line": 35,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "!==",
                          "right": {
                            "type": "StringLiteral",
                            "start": 991,
                            "end": 999,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 29
                              },
                              "end": {
                                "line": 35,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "string",
                              "raw": "\"string\""
                            },
                            "value": "string"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1001,
                          "end": 1070,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 39
                            },
                            "end": {
                              "line": 37,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 1015,
                              "end": 1060,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 12
                                },
                                "end": {
                                  "line": 36,
                                  "column": 57
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 1021,
                                "end": 1059,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 1025,
                                  "end": 1030,
                                  "loc": {
                                    "start": {
                                      "line": 36,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 36,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 1031,
                                    "end": 1058,
                                    "loc": {
                                      "start": {
                                        "line": 36,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 36,
                                        "column": 55
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 1051,
                                        "end": 1056,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 36,
                                            "column": 53
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 1032,
                                        "end": 1049,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 36,
                                            "column": 46
                                          }
                                        },
                                        "value": {
                                          "raw": "string required: ",
                                          "cooked": "string required: "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1057,
                                        "end": 1057,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 36,
                                            "column": 54
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 1079,
                        "end": 1092,
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 8
                          },
                          "end": {
                            "line": 38,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1086,
                          "end": 1091,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 15
                            },
                            "end": {
                              "line": 38,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 1105,
                  "end": 1329,
                  "loc": {
                    "start": {
                      "line": 41,
                      "column": 4
                    },
                    "end": {
                      "line": 49,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 1105,
                    "end": 1111,
                    "loc": {
                      "start": {
                        "line": 41,
                        "column": 4
                      },
                      "end": {
                        "line": 41,
                        "column": 10
                      },
                      "identifierName": "number"
                    },
                    "name": "number"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 1112,
                      "end": 1117,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 11
                        },
                        "end": {
                          "line": 41,
                          "column": 16
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 1119,
                    "end": 1329,
                    "loc": {
                      "start": {
                        "line": 41,
                        "column": 18
                      },
                      "end": {
                        "line": 49,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 1129,
                        "end": 1192,
                        "loc": {
                          "start": {
                            "line": 42,
                            "column": 8
                          },
                          "end": {
                            "line": 44,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 1133,
                          "end": 1153,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 12
                            },
                            "end": {
                              "line": 42,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1133,
                            "end": 1146,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 12
                              },
                              "end": {
                                "line": 42,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1133,
                              "end": 1137,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 12
                                },
                                "end": {
                                  "line": 42,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1138,
                              "end": 1146,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 17
                                },
                                "end": {
                                  "line": 42,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1147,
                              "end": 1152,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 26
                                },
                                "end": {
                                  "line": 42,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1155,
                          "end": 1192,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 34
                            },
                            "end": {
                              "line": 44,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 1169,
                              "end": 1182,
                              "loc": {
                                "start": {
                                  "line": 43,
                                  "column": 12
                                },
                                "end": {
                                  "line": 43,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 1176,
                                "end": 1181,
                                "loc": {
                                  "start": {
                                    "line": 43,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 43,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 1201,
                        "end": 1301,
                        "loc": {
                          "start": {
                            "line": 45,
                            "column": 8
                          },
                          "end": {
                            "line": 47,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 1205,
                          "end": 1230,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 12
                            },
                            "end": {
                              "line": 45,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 1205,
                            "end": 1217,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 12
                              },
                              "end": {
                                "line": 45,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 1212,
                              "end": 1217,
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 19
                                },
                                "end": {
                                  "line": 45,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "!==",
                          "right": {
                            "type": "StringLiteral",
                            "start": 1222,
                            "end": 1230,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 29
                              },
                              "end": {
                                "line": 45,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "number",
                              "raw": "\"number\""
                            },
                            "value": "number"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1232,
                          "end": 1301,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 39
                            },
                            "end": {
                              "line": 47,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 1246,
                              "end": 1291,
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 12
                                },
                                "end": {
                                  "line": 46,
                                  "column": 57
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 1252,
                                "end": 1290,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 1256,
                                  "end": 1261,
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 1262,
                                    "end": 1289,
                                    "loc": {
                                      "start": {
                                        "line": 46,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 46,
                                        "column": 55
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 1282,
                                        "end": 1287,
                                        "loc": {
                                          "start": {
                                            "line": 46,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 46,
                                            "column": 53
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 1263,
                                        "end": 1280,
                                        "loc": {
                                          "start": {
                                            "line": 46,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 46,
                                            "column": 46
                                          }
                                        },
                                        "value": {
                                          "raw": "number required: ",
                                          "cooked": "number required: "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1288,
                                        "end": 1288,
                                        "loc": {
                                          "start": {
                                            "line": 46,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 46,
                                            "column": 54
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 1310,
                        "end": 1323,
                        "loc": {
                          "start": {
                            "line": 48,
                            "column": 8
                          },
                          "end": {
                            "line": 48,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1317,
                          "end": 1322,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 15
                            },
                            "end": {
                              "line": 48,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 1336,
                  "end": 1593,
                  "loc": {
                    "start": {
                      "line": 51,
                      "column": 4
                    },
                    "end": {
                      "line": 59,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 1336,
                    "end": 1348,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 4
                      },
                      "end": {
                        "line": 51,
                        "column": 16
                      },
                      "identifierName": "whole_number"
                    },
                    "name": "whole_number"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 1349,
                      "end": 1354,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 17
                        },
                        "end": {
                          "line": 51,
                          "column": 22
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 1356,
                      "end": 1371,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 24
                        },
                        "end": {
                          "line": 51,
                          "column": 39
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 1356,
                        "end": 1366,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 24
                          },
                          "end": {
                            "line": 51,
                            "column": 34
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 1369,
                        "end": 1371,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 37
                          },
                          "end": {
                            "line": 51,
                            "column": 39
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 1373,
                    "end": 1593,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 41
                      },
                      "end": {
                        "line": 59,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 1383,
                        "end": 1446,
                        "loc": {
                          "start": {
                            "line": 52,
                            "column": 8
                          },
                          "end": {
                            "line": 54,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 1387,
                          "end": 1407,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 12
                            },
                            "end": {
                              "line": 52,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1387,
                            "end": 1400,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 12
                              },
                              "end": {
                                "line": 52,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1387,
                              "end": 1391,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 12
                                },
                                "end": {
                                  "line": 52,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1392,
                              "end": 1400,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 17
                                },
                                "end": {
                                  "line": 52,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1401,
                              "end": 1406,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 26
                                },
                                "end": {
                                  "line": 52,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1409,
                          "end": 1446,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 34
                            },
                            "end": {
                              "line": 54,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 1423,
                              "end": 1436,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 12
                                },
                                "end": {
                                  "line": 53,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 1430,
                                "end": 1435,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 1455,
                        "end": 1565,
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 8
                          },
                          "end": {
                            "line": 57,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 1459,
                          "end": 1475,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 12
                            },
                            "end": {
                              "line": 55,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1459,
                            "end": 1468,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 12
                              },
                              "end": {
                                "line": 55,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "RegExpLiteral",
                              "start": 1459,
                              "end": 1463,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 12
                                },
                                "end": {
                                  "line": 55,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "raw": "/\\./"
                              },
                              "pattern": "\\.",
                              "flags": ""
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1464,
                              "end": 1468,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 17
                                },
                                "end": {
                                  "line": 55,
                                  "column": 21
                                },
                                "identifierName": "test"
                              },
                              "name": "test"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1469,
                              "end": 1474,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 22
                                },
                                "end": {
                                  "line": 55,
                                  "column": 27
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1477,
                          "end": 1565,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 30
                            },
                            "end": {
                              "line": 57,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 1491,
                              "end": 1555,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 12
                                },
                                "end": {
                                  "line": 56,
                                  "column": 76
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 1497,
                                "end": 1554,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 1501,
                                  "end": 1506,
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 1507,
                                    "end": 1553,
                                    "loc": {
                                      "start": {
                                        "line": 56,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 56,
                                        "column": 74
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 1532,
                                        "end": 1542,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 56,
                                            "column": 63
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 1546,
                                        "end": 1551,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 56,
                                            "column": 72
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 1508,
                                        "end": 1530,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 56,
                                            "column": 51
                                          }
                                        },
                                        "value": {
                                          "raw": "whole number required ",
                                          "cooked": "whole number required "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1543,
                                        "end": 1544,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 56,
                                            "column": 65
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1552,
                                        "end": 1552,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 56,
                                            "column": 73
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 1574,
                        "end": 1587,
                        "loc": {
                          "start": {
                            "line": 58,
                            "column": 8
                          },
                          "end": {
                            "line": 58,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1581,
                          "end": 1586,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 15
                            },
                            "end": {
                              "line": 58,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 1600,
                  "end": 1848,
                  "loc": {
                    "start": {
                      "line": 61,
                      "column": 4
                    },
                    "end": {
                      "line": 69,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 1600,
                    "end": 1608,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 4
                      },
                      "end": {
                        "line": 61,
                        "column": 12
                      },
                      "identifierName": "unsigned"
                    },
                    "name": "unsigned"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 1609,
                      "end": 1614,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 13
                        },
                        "end": {
                          "line": 61,
                          "column": 18
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 1616,
                      "end": 1631,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 20
                        },
                        "end": {
                          "line": 61,
                          "column": 35
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 1616,
                        "end": 1626,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 20
                          },
                          "end": {
                            "line": 61,
                            "column": 30
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 1629,
                        "end": 1631,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 33
                          },
                          "end": {
                            "line": 61,
                            "column": 35
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 1633,
                    "end": 1848,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 37
                      },
                      "end": {
                        "line": 69,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 1643,
                        "end": 1706,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 8
                          },
                          "end": {
                            "line": 64,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 1647,
                          "end": 1667,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 12
                            },
                            "end": {
                              "line": 62,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1647,
                            "end": 1660,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 12
                              },
                              "end": {
                                "line": 62,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1647,
                              "end": 1651,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 12
                                },
                                "end": {
                                  "line": 62,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1652,
                              "end": 1660,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 17
                                },
                                "end": {
                                  "line": 62,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1661,
                              "end": 1666,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 26
                                },
                                "end": {
                                  "line": 62,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1669,
                          "end": 1706,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 34
                            },
                            "end": {
                              "line": 64,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 1683,
                              "end": 1696,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 12
                                },
                                "end": {
                                  "line": 63,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 1690,
                                "end": 1695,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 1715,
                        "end": 1820,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 8
                          },
                          "end": {
                            "line": 67,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 1719,
                          "end": 1734,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 12
                            },
                            "end": {
                              "line": 65,
                              "column": 27
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1719,
                            "end": 1727,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 12
                              },
                              "end": {
                                "line": 65,
                                "column": 20
                              }
                            },
                            "object": {
                              "type": "RegExpLiteral",
                              "start": 1719,
                              "end": 1722,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 12
                                },
                                "end": {
                                  "line": 65,
                                  "column": 15
                                }
                              },
                              "extra": {
                                "raw": "/-/"
                              },
                              "pattern": "-",
                              "flags": ""
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1723,
                              "end": 1727,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 16
                                },
                                "end": {
                                  "line": 65,
                                  "column": 20
                                },
                                "identifierName": "test"
                              },
                              "name": "test"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1728,
                              "end": 1733,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 21
                                },
                                "end": {
                                  "line": 65,
                                  "column": 26
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 1736,
                          "end": 1820,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 29
                            },
                            "end": {
                              "line": 67,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 1750,
                              "end": 1810,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 12
                                },
                                "end": {
                                  "line": 66,
                                  "column": 72
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 1756,
                                "end": 1809,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 71
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 1760,
                                  "end": 1765,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 1766,
                                    "end": 1808,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 70
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 1787,
                                        "end": 1797,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 59
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 1801,
                                        "end": 1806,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 68
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 1767,
                                        "end": 1785,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 47
                                          }
                                        },
                                        "value": {
                                          "raw": "unsigned required ",
                                          "cooked": "unsigned required "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1798,
                                        "end": 1799,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 61
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 1807,
                                        "end": 1807,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 69
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 1829,
                        "end": 1842,
                        "loc": {
                          "start": {
                            "line": 68,
                            "column": 8
                          },
                          "end": {
                            "line": 68,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 1836,
                          "end": 1841,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 15
                            },
                            "end": {
                              "line": 68,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 1855,
                  "end": 2005,
                  "loc": {
                    "start": {
                      "line": 71,
                      "column": 4
                    },
                    "end": {
                      "line": 76,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 1855,
                    "end": 1864,
                    "loc": {
                      "start": {
                        "line": 71,
                        "column": 4
                      },
                      "end": {
                        "line": 71,
                        "column": 13
                      },
                      "identifierName": "is_digits"
                    },
                    "name": "is_digits"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 1866,
                    "end": 2005,
                    "loc": {
                      "start": {
                        "line": 71,
                        "column": 15
                      },
                      "end": {
                        "line": 76,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 1875,
                        "end": 1880,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 24
                          },
                          "end": {
                            "line": 71,
                            "column": 29
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 1882,
                      "end": 2005,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 31
                        },
                        "end": {
                          "line": 76,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 1892,
                          "end": 1960,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 1896,
                            "end": 1922,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 12
                              },
                              "end": {
                                "line": 72,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 1896,
                              "end": 1908,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 12
                                },
                                "end": {
                                  "line": 72,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 1903,
                                "end": 1908,
                                "loc": {
                                  "start": {
                                    "line": 72,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 1913,
                              "end": 1922,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 29
                                },
                                "end": {
                                  "line": 72,
                                  "column": 38
                                }
                              },
                              "extra": {
                                "rawValue": "numeric",
                                "raw": "\"numeric\""
                              },
                              "value": "numeric"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1924,
                            "end": 1960,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 40
                              },
                              "end": {
                                "line": 74,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 1938,
                                "end": 1950,
                                "loc": {
                                  "start": {
                                    "line": 73,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 73,
                                    "column": 24
                                  }
                                },
                                "argument": {
                                  "type": "BooleanLiteral",
                                  "start": 1945,
                                  "end": 1949,
                                  "loc": {
                                    "start": {
                                      "line": 73,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 23
                                    }
                                  },
                                  "value": true
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1969,
                          "end": 1999,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 38
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 1976,
                            "end": 1998,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 15
                              },
                              "end": {
                                "line": 75,
                                "column": 37
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1976,
                              "end": 1991,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 15
                                },
                                "end": {
                                  "line": 75,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "RegExpLiteral",
                                "start": 1976,
                                "end": 1986,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 25
                                  }
                                },
                                "extra": {
                                  "raw": "/^[0-9]+$/"
                                },
                                "pattern": "^[0-9]+$",
                                "flags": ""
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1987,
                                "end": 1991,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 30
                                  },
                                  "identifierName": "test"
                                },
                                "name": "test"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1992,
                                "end": 1997,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 36
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 2012,
                  "end": 2405,
                  "loc": {
                    "start": {
                      "line": 78,
                      "column": 4
                    },
                    "end": {
                      "line": 91,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 2012,
                    "end": 2021,
                    "loc": {
                      "start": {
                        "line": 78,
                        "column": 4
                      },
                      "end": {
                        "line": 78,
                        "column": 13
                      },
                      "identifierName": "to_number"
                    },
                    "name": "to_number"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 2023,
                    "end": 2405,
                    "loc": {
                      "start": {
                        "line": 78,
                        "column": 15
                      },
                      "end": {
                        "line": 91,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 2032,
                        "end": 2037,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 24
                          },
                          "end": {
                            "line": 78,
                            "column": 29
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 2039,
                        "end": 2054,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 31
                          },
                          "end": {
                            "line": 78,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2039,
                          "end": 2049,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 31
                            },
                            "end": {
                              "line": 78,
                              "column": 41
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 2052,
                          "end": 2054,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 44
                            },
                            "end": {
                              "line": 78,
                              "column": 46
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 2056,
                      "end": 2405,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 48
                        },
                        "end": {
                          "line": 91,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 2066,
                          "end": 2129,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 2070,
                            "end": 2090,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 12
                              },
                              "end": {
                                "line": 79,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2070,
                              "end": 2083,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 12
                                },
                                "end": {
                                  "line": 79,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2070,
                                "end": 2074,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2075,
                                "end": 2083,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2084,
                                "end": 2089,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2092,
                            "end": 2129,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 34
                              },
                              "end": {
                                "line": 81,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 2106,
                                "end": 2119,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 2113,
                                  "end": 2118,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 2138,
                          "end": 2176,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 8
                            },
                            "end": {
                              "line": 82,
                              "column": 46
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 2138,
                            "end": 2175,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 8
                              },
                              "end": {
                                "line": 82,
                                "column": 45
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2138,
                              "end": 2156,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 8
                                },
                                "end": {
                                  "line": 82,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2138,
                                "end": 2142,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2143,
                                "end": 2156,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 26
                                  },
                                  "identifierName": "no_overflow53"
                                },
                                "name": "no_overflow53"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2157,
                                "end": 2162,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 32
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 2164,
                                "end": 2174,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 44
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 2185,
                          "end": 2373,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 89,
                              "column": 13
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 2189,
                              "end": 2372,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 12
                                },
                                "end": {
                                  "line": 89,
                                  "column": 12
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 2189,
                                "end": 2198,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 21
                                  },
                                  "identifierName": "int_value"
                                },
                                "name": "int_value"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 2201,
                                "end": 2372,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 12
                                  }
                                },
                                "callee": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 2202,
                                  "end": 2369,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 2208,
                                    "end": 2369,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 2222,
                                        "end": 2359,
                                        "loc": {
                                          "start": {
                                            "line": 84,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 13
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 2226,
                                          "end": 2251,
                                          "loc": {
                                            "start": {
                                              "line": 84,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 84,
                                              "column": 41
                                            }
                                          },
                                          "left": {
                                            "type": "UnaryExpression",
                                            "start": 2226,
                                            "end": 2238,
                                            "loc": {
                                              "start": {
                                                "line": 84,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 84,
                                                "column": 28
                                              }
                                            },
                                            "operator": "typeof",
                                            "prefix": true,
                                            "argument": {
                                              "type": "Identifier",
                                              "start": 2233,
                                              "end": 2238,
                                              "loc": {
                                                "start": {
                                                  "line": 84,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 84,
                                                  "column": 28
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            },
                                            "extra": {
                                              "parenthesizedArgument": false
                                            }
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "StringLiteral",
                                            "start": 2243,
                                            "end": 2251,
                                            "loc": {
                                              "start": {
                                                "line": 84,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 84,
                                                "column": 41
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "number",
                                              "raw": "\"number\""
                                            },
                                            "value": "number"
                                          }
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 2253,
                                          "end": 2298,
                                          "loc": {
                                            "start": {
                                              "line": 84,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ReturnStatement",
                                              "start": 2271,
                                              "end": 2284,
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 29
                                                }
                                              },
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 2278,
                                                "end": 2283,
                                                "loc": {
                                                  "start": {
                                                    "line": 85,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 85,
                                                    "column": 28
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              }
                                            }
                                          ],
                                          "directives": []
                                        },
                                        "alternate": {
                                          "type": "BlockStatement",
                                          "start": 2304,
                                          "end": 2359,
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ReturnStatement",
                                              "start": 2322,
                                              "end": 2345,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 39
                                                }
                                              },
                                              "argument": {
                                                "type": "CallExpression",
                                                "start": 2329,
                                                "end": 2344,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 38
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 2329,
                                                  "end": 2337,
                                                  "loc": {
                                                    "start": {
                                                      "line": 87,
                                                      "column": 23
                                                    },
                                                    "end": {
                                                      "line": 87,
                                                      "column": 31
                                                    },
                                                    "identifierName": "parseInt"
                                                  },
                                                  "name": "parseInt"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 2338,
                                                    "end": 2343,
                                                    "loc": {
                                                      "start": {
                                                        "line": 87,
                                                        "column": 32
                                                      },
                                                      "end": {
                                                        "line": 87,
                                                        "column": 37
                                                      },
                                                      "identifierName": "value"
                                                    },
                                                    "name": "value"
                                                  }
                                                ]
                                              }
                                            }
                                          ],
                                          "directives": []
                                        }
                                      }
                                    ],
                                    "directives": []
                                  },
                                  "extra": {
                                    "parenthesized": true,
                                    "parenStart": 2201
                                  }
                                },
                                "arguments": []
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 2382,
                          "end": 2399,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 8
                            },
                            "end": {
                              "line": 90,
                              "column": 25
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 2389,
                            "end": 2398,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 15
                              },
                              "end": {
                                "line": 90,
                                "column": 24
                              },
                              "identifierName": "int_value"
                            },
                            "name": "int_value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 2412,
                  "end": 2801,
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 2412,
                    "end": 2419,
                    "loc": {
                      "start": {
                        "line": 93,
                        "column": 4
                      },
                      "end": {
                        "line": 93,
                        "column": 11
                      },
                      "identifierName": "to_long"
                    },
                    "name": "to_long"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 2420,
                      "end": 2425,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 12
                        },
                        "end": {
                          "line": 93,
                          "column": 17
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 2427,
                      "end": 2442,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 19
                        },
                        "end": {
                          "line": 93,
                          "column": 34
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 2427,
                        "end": 2437,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 19
                          },
                          "end": {
                            "line": 93,
                            "column": 29
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 2440,
                        "end": 2442,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 32
                          },
                          "end": {
                            "line": 93,
                            "column": 34
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 2444,
                      "end": 2460,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 36
                        },
                        "end": {
                          "line": 93,
                          "column": 52
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 2444,
                        "end": 2452,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 36
                          },
                          "end": {
                            "line": 93,
                            "column": 44
                          },
                          "identifierName": "unsigned"
                        },
                        "name": "unsigned"
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 2455,
                        "end": 2460,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 47
                          },
                          "end": {
                            "line": 93,
                            "column": 52
                          }
                        },
                        "value": false
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 2462,
                    "end": 2801,
                    "loc": {
                      "start": {
                        "line": 93,
                        "column": 54
                      },
                      "end": {
                        "line": 106,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 2472,
                        "end": 2535,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 96,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 2476,
                          "end": 2496,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 12
                            },
                            "end": {
                              "line": 94,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2476,
                            "end": 2489,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 94,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2476,
                              "end": 2480,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 12
                                },
                                "end": {
                                  "line": 94,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2481,
                              "end": 2489,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 17
                                },
                                "end": {
                                  "line": 94,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2490,
                              "end": 2495,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 26
                                },
                                "end": {
                                  "line": 94,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 2498,
                          "end": 2535,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 34
                            },
                            "end": {
                              "line": 96,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 2512,
                              "end": 2525,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 12
                                },
                                "end": {
                                  "line": 95,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 2519,
                                "end": 2524,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 2544,
                        "end": 2605,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 8
                          },
                          "end": {
                            "line": 99,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 2548,
                          "end": 2566,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 12
                            },
                            "end": {
                              "line": 97,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2548,
                            "end": 2559,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 12
                              },
                              "end": {
                                "line": 97,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2548,
                              "end": 2552,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 12
                                },
                                "end": {
                                  "line": 97,
                                  "column": 16
                                },
                                "identifierName": "Long"
                              },
                              "name": "Long"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2553,
                              "end": 2559,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 17
                                },
                                "end": {
                                  "line": 97,
                                  "column": 23
                                },
                                "identifierName": "isLong"
                              },
                              "name": "isLong"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2560,
                              "end": 2565,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 24
                                },
                                "end": {
                                  "line": 97,
                                  "column": 29
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 2568,
                          "end": 2605,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 32
                            },
                            "end": {
                              "line": 99,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 2582,
                              "end": 2595,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 12
                                },
                                "end": {
                                  "line": 98,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 2589,
                                "end": 2594,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ExpressionStatement",
                        "start": 2615,
                        "end": 2663,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 8
                          },
                          "end": {
                            "line": 101,
                            "column": 56
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 2615,
                          "end": 2662,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 8
                            },
                            "end": {
                              "line": 101,
                              "column": 55
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2615,
                            "end": 2633,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 8
                              },
                              "end": {
                                "line": 101,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2615,
                              "end": 2619,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 8
                                },
                                "end": {
                                  "line": 101,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2620,
                              "end": 2633,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 13
                                },
                                "end": {
                                  "line": 101,
                                  "column": 26
                                },
                                "identifierName": "no_overflow64"
                              },
                              "name": "no_overflow64"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2634,
                              "end": 2639,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 27
                                },
                                "end": {
                                  "line": 101,
                                  "column": 32
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            {
                              "type": "Identifier",
                              "start": 2641,
                              "end": 2651,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 34
                                },
                                "end": {
                                  "line": 101,
                                  "column": 44
                                },
                                "identifierName": "field_name"
                              },
                              "name": "field_name"
                            },
                            {
                              "type": "Identifier",
                              "start": 2653,
                              "end": 2661,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 46
                                },
                                "end": {
                                  "line": 101,
                                  "column": 54
                                },
                                "identifierName": "unsigned"
                              },
                              "name": "unsigned"
                            }
                          ]
                        }
                      },
                      {
                        "type": "IfStatement",
                        "start": 2672,
                        "end": 2746,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 8
                          },
                          "end": {
                            "line": 104,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 2676,
                          "end": 2701,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 12
                            },
                            "end": {
                              "line": 102,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 2676,
                            "end": 2688,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 12
                              },
                              "end": {
                                "line": 102,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 2683,
                              "end": 2688,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 19
                                },
                                "end": {
                                  "line": 102,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 2693,
                            "end": 2701,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 29
                              },
                              "end": {
                                "line": 102,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "number",
                              "raw": "\"number\""
                            },
                            "value": "number"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 2703,
                          "end": 2746,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 39
                            },
                            "end": {
                              "line": 104,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 2717,
                              "end": 2736,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 12
                                },
                                "end": {
                                  "line": 103,
                                  "column": 31
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 2717,
                                "end": 2735,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 30
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 2717,
                                  "end": 2722,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 17
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 2725,
                                  "end": 2735,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 30
                                    }
                                  },
                                  "left": {
                                    "type": "StringLiteral",
                                    "start": 2725,
                                    "end": 2727,
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 22
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "",
                                      "raw": "\"\""
                                    },
                                    "value": ""
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 2730,
                                    "end": 2735,
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 30
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 2755,
                        "end": 2795,
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 8
                          },
                          "end": {
                            "line": 105,
                            "column": 48
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 2762,
                          "end": 2794,
                          "loc": {
                            "start": {
                              "line": 105,
                              "column": 15
                            },
                            "end": {
                              "line": 105,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2762,
                            "end": 2777,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 15
                              },
                              "end": {
                                "line": 105,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2762,
                              "end": 2766,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 15
                                },
                                "end": {
                                  "line": 105,
                                  "column": 19
                                },
                                "identifierName": "Long"
                              },
                              "name": "Long"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2767,
                              "end": 2777,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 20
                                },
                                "end": {
                                  "line": 105,
                                  "column": 30
                                },
                                "identifierName": "fromString"
                              },
                              "name": "fromString"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2778,
                              "end": 2783,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 31
                                },
                                "end": {
                                  "line": 105,
                                  "column": 36
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            {
                              "type": "Identifier",
                              "start": 2785,
                              "end": 2793,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 38
                                },
                                "end": {
                                  "line": 105,
                                  "column": 46
                                },
                                "identifierName": "unsigned"
                              },
                              "name": "unsigned"
                            }
                          ]
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 2808,
                  "end": 3288,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 123,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 2808,
                    "end": 2817,
                    "loc": {
                      "start": {
                        "line": 108,
                        "column": 4
                      },
                      "end": {
                        "line": 108,
                        "column": 13
                      },
                      "identifierName": "to_string"
                    },
                    "name": "to_string"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 2818,
                      "end": 2823,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 14
                        },
                        "end": {
                          "line": 108,
                          "column": 19
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 2825,
                      "end": 2840,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 21
                        },
                        "end": {
                          "line": 108,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 2825,
                        "end": 2835,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 21
                          },
                          "end": {
                            "line": 108,
                            "column": 31
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 2838,
                        "end": 2840,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 34
                          },
                          "end": {
                            "line": 108,
                            "column": 36
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 2842,
                    "end": 3288,
                    "loc": {
                      "start": {
                        "line": 108,
                        "column": 38
                      },
                      "end": {
                        "line": 123,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 2852,
                        "end": 2915,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 8
                          },
                          "end": {
                            "line": 111,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 2856,
                          "end": 2876,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 12
                            },
                            "end": {
                              "line": 109,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2856,
                            "end": 2869,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 12
                              },
                              "end": {
                                "line": 109,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2856,
                              "end": 2860,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 12
                                },
                                "end": {
                                  "line": 109,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2861,
                              "end": 2869,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 17
                                },
                                "end": {
                                  "line": 109,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2870,
                              "end": 2875,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 26
                                },
                                "end": {
                                  "line": 109,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 2878,
                          "end": 2915,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 34
                            },
                            "end": {
                              "line": 111,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 2892,
                              "end": 2905,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 12
                                },
                                "end": {
                                  "line": 110,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 2899,
                                "end": 2904,
                                "loc": {
                                  "start": {
                                    "line": 110,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 2924,
                        "end": 2992,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 2928,
                          "end": 2953,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 12
                            },
                            "end": {
                              "line": 112,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 2928,
                            "end": 2940,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 2935,
                              "end": 2940,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 19
                                },
                                "end": {
                                  "line": 112,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 2945,
                            "end": 2953,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 29
                              },
                              "end": {
                                "line": 112,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "string",
                              "raw": "\"string\""
                            },
                            "value": "string"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 2955,
                          "end": 2992,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 39
                            },
                            "end": {
                              "line": 114,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 2969,
                              "end": 2982,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 12
                                },
                                "end": {
                                  "line": 113,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 2976,
                                "end": 2981,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 3001,
                        "end": 3125,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 118,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 3005,
                          "end": 3030,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 12
                            },
                            "end": {
                              "line": 115,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 3005,
                            "end": 3017,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 12
                              },
                              "end": {
                                "line": 115,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 3012,
                              "end": 3017,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 19
                                },
                                "end": {
                                  "line": 115,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 3022,
                            "end": 3030,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 29
                              },
                              "end": {
                                "line": 115,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "number",
                              "raw": "\"number\""
                            },
                            "value": "number"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 3032,
                          "end": 3125,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 39
                            },
                            "end": {
                              "line": 118,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 3046,
                              "end": 3084,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 12
                                },
                                "end": {
                                  "line": 116,
                                  "column": 50
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 3046,
                                "end": 3083,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3046,
                                  "end": 3064,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3046,
                                    "end": 3050,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3051,
                                    "end": 3064,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 30
                                      },
                                      "identifierName": "no_overflow53"
                                    },
                                    "name": "no_overflow53"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 3065,
                                    "end": 3070,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 36
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 3072,
                                    "end": 3082,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 48
                                      },
                                      "identifierName": "field_name"
                                    },
                                    "name": "field_name"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 3097,
                              "end": 3115,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 12
                                },
                                "end": {
                                  "line": 117,
                                  "column": 30
                                }
                              },
                              "argument": {
                                "type": "BinaryExpression",
                                "start": 3104,
                                "end": 3114,
                                "loc": {
                                  "start": {
                                    "line": 117,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 117,
                                    "column": 29
                                  }
                                },
                                "left": {
                                  "type": "StringLiteral",
                                  "start": 3104,
                                  "end": 3106,
                                  "loc": {
                                    "start": {
                                      "line": 117,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 117,
                                      "column": 21
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "",
                                    "raw": "\"\""
                                  },
                                  "value": ""
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 3109,
                                  "end": 3114,
                                  "loc": {
                                    "start": {
                                      "line": 117,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 117,
                                      "column": 29
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 3134,
                        "end": 3206,
                        "loc": {
                          "start": {
                            "line": 119,
                            "column": 8
                          },
                          "end": {
                            "line": 121,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 3138,
                          "end": 3156,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 12
                            },
                            "end": {
                              "line": 119,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3138,
                            "end": 3149,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3138,
                              "end": 3142,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 12
                                },
                                "end": {
                                  "line": 119,
                                  "column": 16
                                },
                                "identifierName": "Long"
                              },
                              "name": "Long"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3143,
                              "end": 3149,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 17
                                },
                                "end": {
                                  "line": 119,
                                  "column": 23
                                },
                                "identifierName": "isLong"
                              },
                              "name": "isLong"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 3150,
                              "end": 3155,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 24
                                },
                                "end": {
                                  "line": 119,
                                  "column": 29
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 3158,
                          "end": 3206,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 32
                            },
                            "end": {
                              "line": 121,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 3172,
                              "end": 3196,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 12
                                },
                                "end": {
                                  "line": 120,
                                  "column": 36
                                }
                              },
                              "argument": {
                                "type": "CallExpression",
                                "start": 3179,
                                "end": 3195,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3179,
                                  "end": 3193,
                                  "loc": {
                                    "start": {
                                      "line": 120,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 120,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3179,
                                    "end": 3184,
                                    "loc": {
                                      "start": {
                                        "line": 120,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 120,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3185,
                                    "end": 3193,
                                    "loc": {
                                      "start": {
                                        "line": 120,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 120,
                                        "column": 33
                                      },
                                      "identifierName": "toString"
                                    },
                                    "name": "toString"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ThrowStatement",
                        "start": 3215,
                        "end": 3282,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 8
                          },
                          "end": {
                            "line": 122,
                            "column": 75
                          }
                        },
                        "argument": {
                          "type": "TemplateLiteral",
                          "start": 3221,
                          "end": 3281,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 14
                            },
                            "end": {
                              "line": 122,
                              "column": 74
                            }
                          },
                          "expressions": [
                            {
                              "type": "Identifier",
                              "start": 3241,
                              "end": 3251,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 34
                                },
                                "end": {
                                  "line": 122,
                                  "column": 44
                                },
                                "identifierName": "field_name"
                              },
                              "name": "field_name"
                            },
                            {
                              "type": "UnaryExpression",
                              "start": 3257,
                              "end": 3269,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 50
                                },
                                "end": {
                                  "line": 122,
                                  "column": 62
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 3264,
                                "end": 3269,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 62
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 3274,
                              "end": 3279,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 67
                                },
                                "end": {
                                  "line": 122,
                                  "column": 72
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ],
                          "quasis": [
                            {
                              "type": "TemplateElement",
                              "start": 3222,
                              "end": 3239,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 15
                                },
                                "end": {
                                  "line": 122,
                                  "column": 32
                                }
                              },
                              "value": {
                                "raw": "unsupported type ",
                                "cooked": "unsupported type "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 3252,
                              "end": 3255,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 45
                                },
                                "end": {
                                  "line": 122,
                                  "column": 48
                                }
                              },
                              "value": {
                                "raw": ": (",
                                "cooked": ": ("
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 3270,
                              "end": 3272,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 63
                                },
                                "end": {
                                  "line": 122,
                                  "column": 65
                                }
                              },
                              "value": {
                                "raw": ") ",
                                "cooked": ") "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 3280,
                              "end": 3280,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 73
                                },
                                "end": {
                                  "line": 122,
                                  "column": 73
                                }
                              },
                              "value": {
                                "raw": "",
                                "cooked": ""
                              },
                              "tail": true
                            }
                          ]
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 3295,
                  "end": 3558,
                  "loc": {
                    "start": {
                      "line": 125,
                      "column": 4
                    },
                    "end": {
                      "line": 133,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 3295,
                    "end": 3307,
                    "loc": {
                      "start": {
                        "line": 125,
                        "column": 4
                      },
                      "end": {
                        "line": 125,
                        "column": 16
                      },
                      "identifierName": "require_test"
                    },
                    "name": "require_test"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 3308,
                      "end": 3313,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 17
                        },
                        "end": {
                          "line": 125,
                          "column": 22
                        },
                        "identifierName": "regex"
                      },
                      "name": "regex"
                    },
                    {
                      "type": "Identifier",
                      "start": 3315,
                      "end": 3320,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 24
                        },
                        "end": {
                          "line": 125,
                          "column": 29
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 3322,
                      "end": 3337,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 31
                        },
                        "end": {
                          "line": 125,
                          "column": 46
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 3322,
                        "end": 3332,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 31
                          },
                          "end": {
                            "line": 125,
                            "column": 41
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 3335,
                        "end": 3337,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 44
                          },
                          "end": {
                            "line": 125,
                            "column": 46
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 3339,
                    "end": 3558,
                    "loc": {
                      "start": {
                        "line": 125,
                        "column": 48
                      },
                      "end": {
                        "line": 133,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 3349,
                        "end": 3412,
                        "loc": {
                          "start": {
                            "line": 126,
                            "column": 8
                          },
                          "end": {
                            "line": 128,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 3353,
                          "end": 3373,
                          "loc": {
                            "start": {
                              "line": 126,
                              "column": 12
                            },
                            "end": {
                              "line": 126,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3353,
                            "end": 3366,
                            "loc": {
                              "start": {
                                "line": 126,
                                "column": 12
                              },
                              "end": {
                                "line": 126,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3353,
                              "end": 3357,
                              "loc": {
                                "start": {
                                  "line": 126,
                                  "column": 12
                                },
                                "end": {
                                  "line": 126,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3358,
                              "end": 3366,
                              "loc": {
                                "start": {
                                  "line": 126,
                                  "column": 17
                                },
                                "end": {
                                  "line": 126,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 3367,
                              "end": 3372,
                              "loc": {
                                "start": {
                                  "line": 126,
                                  "column": 26
                                },
                                "end": {
                                  "line": 126,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 3375,
                          "end": 3412,
                          "loc": {
                            "start": {
                              "line": 126,
                              "column": 34
                            },
                            "end": {
                              "line": 128,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 3389,
                              "end": 3402,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 12
                                },
                                "end": {
                                  "line": 127,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 3396,
                                "end": 3401,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 3421,
                        "end": 3530,
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 8
                          },
                          "end": {
                            "line": 131,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "UnaryExpression",
                          "start": 3425,
                          "end": 3443,
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 12
                            },
                            "end": {
                              "line": 129,
                              "column": 30
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "CallExpression",
                            "start": 3426,
                            "end": 3443,
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 13
                              },
                              "end": {
                                "line": 129,
                                "column": 30
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3426,
                              "end": 3436,
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 13
                                },
                                "end": {
                                  "line": 129,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3426,
                                "end": 3431,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 18
                                  },
                                  "identifierName": "regex"
                                },
                                "name": "regex"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3432,
                                "end": 3436,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 23
                                  },
                                  "identifierName": "test"
                                },
                                "name": "test"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 3437,
                                "end": 3442,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 29
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "extra": {
                            "parenthesizedArgument": false
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 3445,
                          "end": 3530,
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 32
                            },
                            "end": {
                              "line": 131,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 3459,
                              "end": 3520,
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 12
                                },
                                "end": {
                                  "line": 130,
                                  "column": 73
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 3465,
                                "end": 3519,
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 72
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 3469,
                                  "end": 3474,
                                  "loc": {
                                    "start": {
                                      "line": 130,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 130,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 3475,
                                    "end": 3518,
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 71
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 3488,
                                        "end": 3493,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 46
                                          },
                                          "identifierName": "regex"
                                        },
                                        "name": "regex"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 3497,
                                        "end": 3507,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 60
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 3511,
                                        "end": 3516,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 69
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 3476,
                                        "end": 3486,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 39
                                          }
                                        },
                                        "value": {
                                          "raw": "unmatched ",
                                          "cooked": "unmatched "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 3494,
                                        "end": 3495,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 48
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 3508,
                                        "end": 3509,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 62
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 3517,
                                        "end": 3517,
                                        "loc": {
                                          "start": {
                                            "line": 130,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 130,
                                            "column": 70
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 3539,
                        "end": 3552,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 8
                          },
                          "end": {
                            "line": 132,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 3546,
                          "end": 3551,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 15
                            },
                            "end": {
                              "line": 132,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 3565,
                  "end": 3875,
                  "loc": {
                    "start": {
                      "line": 135,
                      "column": 4
                    },
                    "end": {
                      "line": 144,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 3565,
                    "end": 3578,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 135,
                        "column": 17
                      },
                      "identifierName": "require_match"
                    },
                    "name": "require_match"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 3580,
                    "end": 3875,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 19
                      },
                      "end": {
                        "line": 144,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 3589,
                        "end": 3594,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 28
                          },
                          "end": {
                            "line": 135,
                            "column": 33
                          },
                          "identifierName": "regex"
                        },
                        "name": "regex"
                      },
                      {
                        "type": "Identifier",
                        "start": 3596,
                        "end": 3601,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 35
                          },
                          "end": {
                            "line": 135,
                            "column": 40
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 3603,
                        "end": 3618,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 42
                          },
                          "end": {
                            "line": 135,
                            "column": 57
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3603,
                          "end": 3613,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 42
                            },
                            "end": {
                              "line": 135,
                              "column": 52
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 3616,
                          "end": 3618,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 55
                            },
                            "end": {
                              "line": 135,
                              "column": 57
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 3620,
                      "end": 3875,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 59
                        },
                        "end": {
                          "line": 144,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 3630,
                          "end": 3693,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 8
                            },
                            "end": {
                              "line": 138,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 3634,
                            "end": 3654,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 12
                              },
                              "end": {
                                "line": 136,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3634,
                              "end": 3647,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 12
                                },
                                "end": {
                                  "line": 136,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3634,
                                "end": 3638,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3639,
                                "end": 3647,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 3648,
                                "end": 3653,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3656,
                            "end": 3693,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 34
                              },
                              "end": {
                                "line": 138,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 3670,
                                "end": 3683,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 3677,
                                  "end": 3682,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 3702,
                          "end": 3733,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 8
                            },
                            "end": {
                              "line": 139,
                              "column": 39
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 3706,
                              "end": 3732,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 12
                                },
                                "end": {
                                  "line": 139,
                                  "column": 38
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 3706,
                                "end": 3711,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 17
                                  },
                                  "identifierName": "match"
                                },
                                "name": "match"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 3714,
                                "end": 3732,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3714,
                                  "end": 3725,
                                  "loc": {
                                    "start": {
                                      "line": 139,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 139,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3714,
                                    "end": 3719,
                                    "loc": {
                                      "start": {
                                        "line": 139,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 139,
                                        "column": 25
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3720,
                                    "end": 3725,
                                    "loc": {
                                      "start": {
                                        "line": 139,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 139,
                                        "column": 31
                                      },
                                      "identifierName": "match"
                                    },
                                    "name": "match"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 3726,
                                    "end": 3731,
                                    "loc": {
                                      "start": {
                                        "line": 139,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 139,
                                        "column": 37
                                      },
                                      "identifierName": "regex"
                                    },
                                    "name": "regex"
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "IfStatement",
                          "start": 3742,
                          "end": 3847,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 8
                            },
                            "end": {
                              "line": 142,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 3746,
                            "end": 3760,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 12
                              },
                              "end": {
                                "line": 140,
                                "column": 26
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 3746,
                              "end": 3751,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 12
                                },
                                "end": {
                                  "line": 140,
                                  "column": 17
                                },
                                "identifierName": "match"
                              },
                              "name": "match"
                            },
                            "operator": "===",
                            "right": {
                              "type": "NullLiteral",
                              "start": 3756,
                              "end": 3760,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 22
                                },
                                "end": {
                                  "line": 140,
                                  "column": 26
                                }
                              }
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3762,
                            "end": 3847,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 28
                              },
                              "end": {
                                "line": 142,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 3776,
                                "end": 3837,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 73
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 3782,
                                  "end": 3836,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 72
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 3786,
                                    "end": 3791,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 3792,
                                      "end": 3835,
                                      "loc": {
                                        "start": {
                                          "line": 141,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 141,
                                          "column": 71
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 3805,
                                          "end": 3810,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 46
                                            },
                                            "identifierName": "regex"
                                          },
                                          "name": "regex"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 3814,
                                          "end": 3824,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 60
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 3828,
                                          "end": 3833,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 69
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 3793,
                                          "end": 3803,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 39
                                            }
                                          },
                                          "value": {
                                            "raw": "unmatched ",
                                            "cooked": "unmatched "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3811,
                                          "end": 3812,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 48
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3825,
                                          "end": 3826,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 62
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3834,
                                          "end": 3834,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 70
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 3856,
                          "end": 3869,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 8
                            },
                            "end": {
                              "line": 143,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 3863,
                            "end": 3868,
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 15
                              },
                              "end": {
                                "line": 143,
                                "column": 20
                              },
                              "identifierName": "match"
                            },
                            "name": "match"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 3882,
                  "end": 4065,
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 4
                    },
                    "end": {
                      "line": 152,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 3882,
                    "end": 3899,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 4
                      },
                      "end": {
                        "line": 146,
                        "column": 21
                      },
                      "identifierName": "require_object_id"
                    },
                    "name": "require_object_id"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 3901,
                    "end": 4065,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 23
                      },
                      "end": {
                        "line": 152,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 3910,
                        "end": 3915,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 32
                          },
                          "end": {
                            "line": 146,
                            "column": 37
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 3917,
                        "end": 3927,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 39
                          },
                          "end": {
                            "line": 146,
                            "column": 49
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 3929,
                      "end": 4065,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 51
                        },
                        "end": {
                          "line": 152,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 3939,
                          "end": 4059,
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 8
                            },
                            "end": {
                              "line": 151,
                              "column": 10
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 3946,
                            "end": 4058,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 15
                              },
                              "end": {
                                "line": 151,
                                "column": 9
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 3946,
                              "end": 3959,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 15
                                },
                                "end": {
                                  "line": 147,
                                  "column": 28
                                },
                                "identifierName": "require_match"
                              },
                              "name": "require_match"
                            },
                            "arguments": [
                              {
                                "type": "RegExpLiteral",
                                "start": 3973,
                                "end": 4005,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 44
                                  }
                                },
                                "extra": {
                                  "raw": "/^([0-9]+)\\.([0-9]+)\\.([0-9]+)$/"
                                },
                                "pattern": "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$",
                                "flags": ""
                              },
                              {
                                "type": "Identifier",
                                "start": 4019,
                                "end": 4024,
                                "loc": {
                                  "start": {
                                    "line": 149,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 149,
                                    "column": 17
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 4038,
                                "end": 4048,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 22
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 4109,
                  "end": 4431,
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 4
                    },
                    "end": {
                      "line": 164,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 4109,
                    "end": 4122,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 4
                      },
                      "end": {
                        "line": 155,
                        "column": 17
                      },
                      "identifierName": "require_range"
                    },
                    "name": "require_range",
                    "leadingComments": null
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 4123,
                      "end": 4126,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 18
                        },
                        "end": {
                          "line": 155,
                          "column": 21
                        },
                        "identifierName": "min"
                      },
                      "name": "min"
                    },
                    {
                      "type": "Identifier",
                      "start": 4128,
                      "end": 4131,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 23
                        },
                        "end": {
                          "line": 155,
                          "column": 26
                        },
                        "identifierName": "max"
                      },
                      "name": "max"
                    },
                    {
                      "type": "Identifier",
                      "start": 4133,
                      "end": 4138,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 28
                        },
                        "end": {
                          "line": 155,
                          "column": 33
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 4140,
                      "end": 4155,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 35
                        },
                        "end": {
                          "line": 155,
                          "column": 50
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 4140,
                        "end": 4150,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 35
                          },
                          "end": {
                            "line": 155,
                            "column": 45
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 4153,
                        "end": 4155,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 48
                          },
                          "end": {
                            "line": 155,
                            "column": 50
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 4157,
                    "end": 4431,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 52
                      },
                      "end": {
                        "line": 164,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 4167,
                        "end": 4230,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 4171,
                          "end": 4191,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 12
                            },
                            "end": {
                              "line": 156,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4171,
                            "end": 4184,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 12
                              },
                              "end": {
                                "line": 156,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4171,
                              "end": 4175,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 12
                                },
                                "end": {
                                  "line": 156,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4176,
                              "end": 4184,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 17
                                },
                                "end": {
                                  "line": 156,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 4185,
                              "end": 4190,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 26
                                },
                                "end": {
                                  "line": 156,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 4193,
                          "end": 4230,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 34
                            },
                            "end": {
                              "line": 158,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 4207,
                              "end": 4220,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 12
                                },
                                "end": {
                                  "line": 157,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4214,
                                "end": 4219,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 4239,
                        "end": 4274,
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 8
                          },
                          "end": {
                            "line": 159,
                            "column": 43
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 4243,
                            "end": 4273,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 12
                              },
                              "end": {
                                "line": 159,
                                "column": 42
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 4243,
                              "end": 4249,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 12
                                },
                                "end": {
                                  "line": 159,
                                  "column": 18
                                },
                                "identifierName": "number"
                              },
                              "name": "number"
                            },
                            "init": {
                              "type": "CallExpression",
                              "start": 4252,
                              "end": 4273,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 21
                                },
                                "end": {
                                  "line": 159,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4252,
                                "end": 4266,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 35
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4252,
                                  "end": 4256,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4257,
                                  "end": 4266,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 35
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4267,
                                  "end": 4272,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 41
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "IfStatement",
                        "start": 4283,
                        "end": 4403,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 8
                          },
                          "end": {
                            "line": 162,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "LogicalExpression",
                          "start": 4287,
                          "end": 4313,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 38
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 4287,
                            "end": 4298,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 12
                              },
                              "end": {
                                "line": 160,
                                "column": 23
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4287,
                              "end": 4292,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 12
                                },
                                "end": {
                                  "line": 160,
                                  "column": 17
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "operator": "<",
                            "right": {
                              "type": "Identifier",
                              "start": 4295,
                              "end": 4298,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 20
                                },
                                "end": {
                                  "line": 160,
                                  "column": 23
                                },
                                "identifierName": "min"
                              },
                              "name": "min"
                            }
                          },
                          "operator": "||",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 4302,
                            "end": 4313,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 27
                              },
                              "end": {
                                "line": 160,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4302,
                              "end": 4307,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 27
                                },
                                "end": {
                                  "line": 160,
                                  "column": 32
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "operator": ">",
                            "right": {
                              "type": "Identifier",
                              "start": 4310,
                              "end": 4313,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 35
                                },
                                "end": {
                                  "line": 160,
                                  "column": 38
                                },
                                "identifierName": "max"
                              },
                              "name": "max"
                            }
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 4315,
                          "end": 4403,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 40
                            },
                            "end": {
                              "line": 162,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ThrowStatement",
                              "start": 4329,
                              "end": 4393,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 12
                                },
                                "end": {
                                  "line": 161,
                                  "column": 76
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 4335,
                                "end": 4392,
                                "loc": {
                                  "start": {
                                    "line": 161,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 161,
                                    "column": 75
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 4339,
                                  "end": 4344,
                                  "loc": {
                                    "start": {
                                      "line": 161,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 161,
                                      "column": 27
                                    },
                                    "identifierName": "Error"
                                  },
                                  "name": "Error"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 4345,
                                    "end": 4391,
                                    "loc": {
                                      "start": {
                                        "line": 161,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 161,
                                        "column": 74
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 4361,
                                        "end": 4366,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 49
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4370,
                                        "end": 4380,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 63
                                          },
                                          "identifierName": "field_name"
                                        },
                                        "name": "field_name"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4384,
                                        "end": 4389,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 72
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 4346,
                                        "end": 4359,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 42
                                          }
                                        },
                                        "value": {
                                          "raw": "out of range ",
                                          "cooked": "out of range "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 4367,
                                        "end": 4368,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 51
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 4381,
                                        "end": 4382,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 65
                                          }
                                        },
                                        "value": {
                                          "raw": " ",
                                          "cooked": " "
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 4390,
                                        "end": 4390,
                                        "loc": {
                                          "start": {
                                            "line": 161,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 161,
                                            "column": 73
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 4412,
                        "end": 4425,
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 8
                          },
                          "end": {
                            "line": 163,
                            "column": 21
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 4419,
                          "end": 4424,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 15
                            },
                            "end": {
                              "line": 163,
                              "column": 20
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      }
                    ],
                    "directives": []
                  },
                  "leadingComments": [
                    {
                      "type": "CommentLine",
                      "value": " Does not support over 53 bits",
                      "start": 4072,
                      "end": 4104,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 4
                        },
                        "end": {
                          "line": 154,
                          "column": 36
                        }
                      }
                    }
                  ]
                },
                {
                  "type": "ObjectProperty",
                  "start": 4438,
                  "end": 5206,
                  "loc": {
                    "start": {
                      "line": 166,
                      "column": 4
                    },
                    "end": {
                      "line": 190,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 4438,
                    "end": 4457,
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 4
                      },
                      "end": {
                        "line": 166,
                        "column": 23
                      },
                      "identifierName": "require_object_type"
                    },
                    "name": "require_object_type"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 4459,
                    "end": 5206,
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 25
                      },
                      "end": {
                        "line": 190,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "AssignmentPattern",
                        "start": 4477,
                        "end": 4496,
                        "loc": {
                          "start": {
                            "line": 167,
                            "column": 8
                          },
                          "end": {
                            "line": 167,
                            "column": 27
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 4477,
                          "end": 4492,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 8
                            },
                            "end": {
                              "line": 167,
                              "column": 23
                            },
                            "identifierName": "reserved_spaces"
                          },
                          "name": "reserved_spaces"
                        },
                        "right": {
                          "type": "NumericLiteral",
                          "start": 4495,
                          "end": 4496,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 26
                            },
                            "end": {
                              "line": 167,
                              "column": 27
                            }
                          },
                          "extra": {
                            "rawValue": 1,
                            "raw": "1"
                          },
                          "value": 1
                        }
                      },
                      {
                        "type": "Identifier",
                        "start": 4506,
                        "end": 4510,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 8
                          },
                          "end": {
                            "line": 168,
                            "column": 12
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 4520,
                        "end": 4525,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 169,
                            "column": 13
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 4535,
                        "end": 4550,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 8
                          },
                          "end": {
                            "line": 170,
                            "column": 23
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 4535,
                          "end": 4545,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 18
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 4548,
                          "end": 4550,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 21
                            },
                            "end": {
                              "line": 170,
                              "column": 23
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 4557,
                      "end": 5206,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 6
                        },
                        "end": {
                          "line": 190,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 4567,
                          "end": 4630,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 8
                            },
                            "end": {
                              "line": 174,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 4571,
                            "end": 4591,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 12
                              },
                              "end": {
                                "line": 172,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4571,
                              "end": 4584,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 12
                                },
                                "end": {
                                  "line": 172,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4571,
                                "end": 4575,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4576,
                                "end": 4584,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 4585,
                                "end": 4590,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4593,
                            "end": 4630,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 34
                              },
                              "end": {
                                "line": 174,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 4607,
                                "end": 4620,
                                "loc": {
                                  "start": {
                                    "line": 173,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 173,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 4614,
                                  "end": 4619,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 4639,
                          "end": 4686,
                          "loc": {
                            "start": {
                              "line": 175,
                              "column": 8
                            },
                            "end": {
                              "line": 175,
                              "column": 55
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 4643,
                              "end": 4685,
                              "loc": {
                                "start": {
                                  "line": 175,
                                  "column": 12
                                },
                                "end": {
                                  "line": 175,
                                  "column": 54
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 4643,
                                "end": 4654,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 23
                                  },
                                  "identifierName": "object_type"
                                },
                                "name": "object_type"
                              },
                              "init": {
                                "type": "MemberExpression",
                                "start": 4657,
                                "end": 4685,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4657,
                                  "end": 4679,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4657,
                                    "end": 4667,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 36
                                      },
                                      "identifierName": "ChainTypes"
                                    },
                                    "name": "ChainTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4668,
                                    "end": 4679,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 48
                                      },
                                      "identifierName": "object_type"
                                    },
                                    "name": "object_type"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4680,
                                  "end": 4684,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 53
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                "computed": true
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "IfStatement",
                          "start": 4695,
                          "end": 4837,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 8
                            },
                            "end": {
                              "line": 180,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 4699,
                            "end": 4711,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 12
                              },
                              "end": {
                                "line": 176,
                                "column": 24
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 4700,
                              "end": 4711,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 13
                                },
                                "end": {
                                  "line": 176,
                                  "column": 24
                                },
                                "identifierName": "object_type"
                              },
                              "name": "object_type"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4713,
                            "end": 4837,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 26
                              },
                              "end": {
                                "line": 180,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 4727,
                                "end": 4827,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 179,
                                    "column": 14
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 4733,
                                  "end": 4826,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 13
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 4737,
                                    "end": 4742,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 4760,
                                      "end": 4812,
                                      "loc": {
                                        "start": {
                                          "line": 178,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 178,
                                          "column": 68
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 4783,
                                          "end": 4787,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 43
                                            },
                                            "identifierName": "type"
                                          },
                                          "name": "type"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4791,
                                          "end": 4801,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 57
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4805,
                                          "end": 4810,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 66
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 4761,
                                          "end": 4781,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 37
                                            }
                                          },
                                          "value": {
                                            "raw": "Unknown object type ",
                                            "cooked": "Unknown object type "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4788,
                                          "end": 4789,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 45
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4802,
                                          "end": 4803,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 59
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4811,
                                          "end": 4811,
                                          "loc": {
                                            "start": {
                                              "line": 178,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 178,
                                              "column": 67
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 4846,
                          "end": 4913,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 8
                            },
                            "end": {
                              "line": 181,
                              "column": 75
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 4850,
                              "end": 4912,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 12
                                },
                                "end": {
                                  "line": 181,
                                  "column": 74
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 4850,
                                "end": 4852,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 14
                                  },
                                  "identifierName": "re"
                                },
                                "name": "re"
                              },
                              "init": {
                                "type": "NewExpression",
                                "start": 4855,
                                "end": 4912,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 4859,
                                  "end": 4865,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 27
                                    },
                                    "identifierName": "RegExp"
                                  },
                                  "name": "RegExp"
                                },
                                "arguments": [
                                  {
                                    "type": "TemplateLiteral",
                                    "start": 4866,
                                    "end": 4911,
                                    "loc": {
                                      "start": {
                                        "line": 181,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 73
                                      }
                                    },
                                    "expressions": [
                                      {
                                        "type": "Identifier",
                                        "start": 4869,
                                        "end": 4884,
                                        "loc": {
                                          "start": {
                                            "line": 181,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 46
                                          },
                                          "identifierName": "reserved_spaces"
                                        },
                                        "name": "reserved_spaces"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4889,
                                        "end": 4900,
                                        "loc": {
                                          "start": {
                                            "line": 181,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 62
                                          },
                                          "identifierName": "object_type"
                                        },
                                        "name": "object_type"
                                      }
                                    ],
                                    "quasis": [
                                      {
                                        "type": "TemplateElement",
                                        "start": 4867,
                                        "end": 4867,
                                        "loc": {
                                          "start": {
                                            "line": 181,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 29
                                          }
                                        },
                                        "value": {
                                          "raw": "",
                                          "cooked": ""
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 4885,
                                        "end": 4887,
                                        "loc": {
                                          "start": {
                                            "line": 181,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 49
                                          }
                                        },
                                        "value": {
                                          "raw": "\\.",
                                          "cooked": "."
                                        },
                                        "tail": false
                                      },
                                      {
                                        "type": "TemplateElement",
                                        "start": 4901,
                                        "end": 4910,
                                        "loc": {
                                          "start": {
                                            "line": 181,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 72
                                          }
                                        },
                                        "value": {
                                          "raw": "\\.[0-9]+$",
                                          "cooked": ".[0-9]+$"
                                        },
                                        "tail": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "IfStatement",
                          "start": 4922,
                          "end": 5178,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 8
                            },
                            "end": {
                              "line": 188,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 4926,
                            "end": 4941,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 12
                              },
                              "end": {
                                "line": 182,
                                "column": 27
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 4927,
                              "end": 4941,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 13
                                },
                                "end": {
                                  "line": 182,
                                  "column": 27
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4927,
                                "end": 4934,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 20
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4927,
                                  "end": 4929,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 15
                                    },
                                    "identifierName": "re"
                                  },
                                  "name": "re"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4930,
                                  "end": 4934,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 20
                                    },
                                    "identifierName": "test"
                                  },
                                  "name": "test"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4935,
                                  "end": 4940,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 26
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4943,
                            "end": 5178,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 29
                              },
                              "end": {
                                "line": 188,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 4957,
                                "end": 5168,
                                "loc": {
                                  "start": {
                                    "line": 183,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 14
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 4963,
                                  "end": 5167,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 13
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 4967,
                                    "end": 4972,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 183,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 4990,
                                      "end": 5153,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 64
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 4990,
                                        "end": 5086,
                                        "loc": {
                                          "start": {
                                            "line": 184,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 63
                                          }
                                        },
                                        "left": {
                                          "type": "TemplateLiteral",
                                          "start": 4990,
                                          "end": 5020,
                                          "loc": {
                                            "start": {
                                              "line": 184,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 184,
                                              "column": 46
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 5003,
                                              "end": 5007,
                                              "loc": {
                                                "start": {
                                                  "line": 184,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 184,
                                                  "column": 33
                                                },
                                                "identifierName": "type"
                                              },
                                              "name": "type"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 4991,
                                              "end": 5001,
                                              "loc": {
                                                "start": {
                                                  "line": 184,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 184,
                                                  "column": 27
                                                }
                                              },
                                              "value": {
                                                "raw": "Expecting ",
                                                "cooked": "Expecting "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5008,
                                              "end": 5019,
                                              "loc": {
                                                "start": {
                                                  "line": 184,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 184,
                                                  "column": 45
                                                }
                                              },
                                              "value": {
                                                "raw": " in format ",
                                                "cooked": " in format "
                                              },
                                              "tail": true
                                            }
                                          ]
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "TemplateLiteral",
                                          "start": 5043,
                                          "end": 5086,
                                          "loc": {
                                            "start": {
                                              "line": 185,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 63
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 5046,
                                              "end": 5061,
                                              "loc": {
                                                "start": {
                                                  "line": 185,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 185,
                                                  "column": 38
                                                },
                                                "identifierName": "reserved_spaces"
                                              },
                                              "name": "reserved_spaces"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5065,
                                              "end": 5076,
                                              "loc": {
                                                "start": {
                                                  "line": 185,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 185,
                                                  "column": 53
                                                },
                                                "identifierName": "object_type"
                                              },
                                              "name": "object_type"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 5044,
                                              "end": 5044,
                                              "loc": {
                                                "start": {
                                                  "line": 185,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 185,
                                                  "column": 21
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5062,
                                              "end": 5063,
                                              "loc": {
                                                "start": {
                                                  "line": 185,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 185,
                                                  "column": 40
                                                }
                                              },
                                              "value": {
                                                "raw": ".",
                                                "cooked": "."
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5077,
                                              "end": 5085,
                                              "loc": {
                                                "start": {
                                                  "line": 185,
                                                  "column": 54
                                                },
                                                "end": {
                                                  "line": 185,
                                                  "column": 62
                                                }
                                              },
                                              "value": {
                                                "raw": ".[0-9]+ ",
                                                "cooked": ".[0-9]+ "
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "TemplateLiteral",
                                        "start": 5109,
                                        "end": 5153,
                                        "loc": {
                                          "start": {
                                            "line": 186,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 186,
                                            "column": 64
                                          }
                                        },
                                        "expressions": [
                                          {
                                            "type": "Identifier",
                                            "start": 5123,
                                            "end": 5128,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 39
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5132,
                                            "end": 5142,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 53
                                              },
                                              "identifierName": "field_name"
                                            },
                                            "name": "field_name"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5146,
                                            "end": 5151,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 62
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          }
                                        ],
                                        "quasis": [
                                          {
                                            "type": "TemplateElement",
                                            "start": 5110,
                                            "end": 5121,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 32
                                              }
                                            },
                                            "value": {
                                              "raw": "instead of ",
                                              "cooked": "instead of "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 5129,
                                            "end": 5130,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 41
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 5143,
                                            "end": 5144,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 54
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 55
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 5152,
                                            "end": 5152,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 63
                                              }
                                            },
                                            "value": {
                                              "raw": "",
                                              "cooked": ""
                                            },
                                            "tail": true
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 5187,
                          "end": 5200,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 8
                            },
                            "end": {
                              "line": 189,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 5194,
                            "end": 5199,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 15
                              },
                              "end": {
                                "line": 189,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 5213,
                  "end": 5483,
                  "loc": {
                    "start": {
                      "line": 192,
                      "column": 4
                    },
                    "end": {
                      "line": 198,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 5213,
                    "end": 5225,
                    "loc": {
                      "start": {
                        "line": 192,
                        "column": 4
                      },
                      "end": {
                        "line": 192,
                        "column": 16
                      },
                      "identifierName": "get_instance"
                    },
                    "name": "get_instance"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 5227,
                    "end": 5483,
                    "loc": {
                      "start": {
                        "line": 192,
                        "column": 18
                      },
                      "end": {
                        "line": 198,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 5236,
                        "end": 5250,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 27
                          },
                          "end": {
                            "line": 192,
                            "column": 41
                          },
                          "identifierName": "reserve_spaces"
                        },
                        "name": "reserve_spaces"
                      },
                      {
                        "type": "Identifier",
                        "start": 5252,
                        "end": 5256,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 43
                          },
                          "end": {
                            "line": 192,
                            "column": 47
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 5258,
                        "end": 5263,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 49
                          },
                          "end": {
                            "line": 192,
                            "column": 54
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 5265,
                        "end": 5275,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 56
                          },
                          "end": {
                            "line": 192,
                            "column": 66
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 5277,
                      "end": 5483,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 68
                        },
                        "end": {
                          "line": 198,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 5287,
                          "end": 5350,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 8
                            },
                            "end": {
                              "line": 195,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 5291,
                            "end": 5311,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 12
                              },
                              "end": {
                                "line": 193,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5291,
                              "end": 5304,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 12
                                },
                                "end": {
                                  "line": 193,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5291,
                                "end": 5295,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5296,
                                "end": 5304,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5305,
                                "end": 5310,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 5313,
                            "end": 5350,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 34
                              },
                              "end": {
                                "line": 195,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 5327,
                                "end": 5340,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 5334,
                                  "end": 5339,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 5359,
                          "end": 5425,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 74
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 5359,
                            "end": 5424,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 73
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5359,
                              "end": 5383,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 8
                                },
                                "end": {
                                  "line": 196,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5359,
                                "end": 5363,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5364,
                                "end": 5383,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5384,
                                "end": 5398,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 47
                                  },
                                  "identifierName": "reserve_spaces"
                                },
                                "name": "reserve_spaces"
                              },
                              {
                                "type": "Identifier",
                                "start": 5400,
                                "end": 5404,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 53
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 5406,
                                "end": 5411,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 60
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 5413,
                                "end": 5423,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 72
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 5434,
                          "end": 5477,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 51
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 5441,
                            "end": 5476,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 15
                              },
                              "end": {
                                "line": 197,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5441,
                              "end": 5455,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 15
                                },
                                "end": {
                                  "line": 197,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5441,
                                "end": 5445,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5446,
                                "end": 5455,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 29
                                  },
                                  "identifierName": "to_number"
                                },
                                "name": "to_number"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 5456,
                                "end": 5475,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 5456,
                                  "end": 5472,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 5456,
                                    "end": 5467,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5456,
                                      "end": 5461,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 35
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5462,
                                      "end": 5467,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 41
                                        },
                                        "identifierName": "split"
                                      },
                                      "name": "split"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 5468,
                                      "end": 5471,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 45
                                        }
                                      },
                                      "extra": {
                                        "rawValue": ".",
                                        "raw": "\".\""
                                      },
                                      "value": "."
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "NumericLiteral",
                                  "start": 5473,
                                  "end": 5474,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                "computed": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 5490,
                  "end": 5638,
                  "loc": {
                    "start": {
                      "line": 200,
                      "column": 4
                    },
                    "end": {
                      "line": 203,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 5490,
                    "end": 5511,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 4
                      },
                      "end": {
                        "line": 200,
                        "column": 25
                      },
                      "identifierName": "require_relative_type"
                    },
                    "name": "require_relative_type"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 5513,
                    "end": 5638,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 27
                      },
                      "end": {
                        "line": 203,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 5522,
                        "end": 5526,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 36
                          },
                          "end": {
                            "line": 200,
                            "column": 40
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 5528,
                        "end": 5533,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 42
                          },
                          "end": {
                            "line": 200,
                            "column": 47
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 5535,
                        "end": 5545,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 49
                          },
                          "end": {
                            "line": 200,
                            "column": 59
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 5547,
                      "end": 5638,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 61
                        },
                        "end": {
                          "line": 203,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 5557,
                          "end": 5610,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 8
                            },
                            "end": {
                              "line": 201,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 5557,
                            "end": 5609,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 8
                              },
                              "end": {
                                "line": 201,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5557,
                              "end": 5581,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 8
                                },
                                "end": {
                                  "line": 201,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5557,
                                "end": 5561,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5562,
                                "end": 5581,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 5582,
                                "end": 5583,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "value": 0
                              },
                              {
                                "type": "Identifier",
                                "start": 5585,
                                "end": 5589,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 5591,
                                "end": 5596,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 5598,
                                "end": 5608,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 5619,
                          "end": 5632,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 8
                            },
                            "end": {
                              "line": 202,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 5626,
                            "end": 5631,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 15
                              },
                              "end": {
                                "line": 202,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 5645,
                  "end": 5895,
                  "loc": {
                    "start": {
                      "line": 205,
                      "column": 4
                    },
                    "end": {
                      "line": 211,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 5645,
                    "end": 5666,
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 4
                      },
                      "end": {
                        "line": 205,
                        "column": 25
                      },
                      "identifierName": "get_relative_instance"
                    },
                    "name": "get_relative_instance"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 5668,
                    "end": 5895,
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 27
                      },
                      "end": {
                        "line": 211,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 5677,
                        "end": 5681,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 36
                          },
                          "end": {
                            "line": 205,
                            "column": 40
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 5683,
                        "end": 5688,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 42
                          },
                          "end": {
                            "line": 205,
                            "column": 47
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 5690,
                        "end": 5700,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 49
                          },
                          "end": {
                            "line": 205,
                            "column": 59
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 5702,
                      "end": 5895,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 61
                        },
                        "end": {
                          "line": 211,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 5712,
                          "end": 5775,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 8
                            },
                            "end": {
                              "line": 208,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 5716,
                            "end": 5736,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 12
                              },
                              "end": {
                                "line": 206,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5716,
                              "end": 5729,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 12
                                },
                                "end": {
                                  "line": 206,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5716,
                                "end": 5720,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5721,
                                "end": 5729,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5730,
                                "end": 5735,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 5738,
                            "end": 5775,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 34
                              },
                              "end": {
                                "line": 208,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 5752,
                                "end": 5765,
                                "loc": {
                                  "start": {
                                    "line": 207,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 207,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 5759,
                                  "end": 5764,
                                  "loc": {
                                    "start": {
                                      "line": 207,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 5784,
                          "end": 5837,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 8
                            },
                            "end": {
                              "line": 209,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 5784,
                            "end": 5836,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 8
                              },
                              "end": {
                                "line": 209,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5784,
                              "end": 5808,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 8
                                },
                                "end": {
                                  "line": 209,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5784,
                                "end": 5788,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5789,
                                "end": 5808,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 5809,
                                "end": 5810,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "value": 0
                              },
                              {
                                "type": "Identifier",
                                "start": 5812,
                                "end": 5816,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 5818,
                                "end": 5823,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 5825,
                                "end": 5835,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 5846,
                          "end": 5889,
                          "loc": {
                            "start": {
                              "line": 210,
                              "column": 8
                            },
                            "end": {
                              "line": 210,
                              "column": 51
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 5853,
                            "end": 5888,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 15
                              },
                              "end": {
                                "line": 210,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5853,
                              "end": 5867,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 15
                                },
                                "end": {
                                  "line": 210,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5853,
                                "end": 5857,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5858,
                                "end": 5867,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 29
                                  },
                                  "identifierName": "to_number"
                                },
                                "name": "to_number"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 5868,
                                "end": 5887,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 5868,
                                  "end": 5884,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 5868,
                                    "end": 5879,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5868,
                                      "end": 5873,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 35
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5874,
                                      "end": 5879,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 41
                                        },
                                        "identifierName": "split"
                                      },
                                      "name": "split"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 5880,
                                      "end": 5883,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 45
                                        }
                                      },
                                      "extra": {
                                        "rawValue": ".",
                                        "raw": "\".\""
                                      },
                                      "value": "."
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "NumericLiteral",
                                  "start": 5885,
                                  "end": 5886,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                "computed": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 5902,
                  "end": 6050,
                  "loc": {
                    "start": {
                      "line": 213,
                      "column": 4
                    },
                    "end": {
                      "line": 216,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 5902,
                    "end": 5923,
                    "loc": {
                      "start": {
                        "line": 213,
                        "column": 4
                      },
                      "end": {
                        "line": 213,
                        "column": 25
                      },
                      "identifierName": "require_protocol_type"
                    },
                    "name": "require_protocol_type"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 5925,
                    "end": 6050,
                    "loc": {
                      "start": {
                        "line": 213,
                        "column": 27
                      },
                      "end": {
                        "line": 216,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 5934,
                        "end": 5938,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 36
                          },
                          "end": {
                            "line": 213,
                            "column": 40
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 5940,
                        "end": 5945,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 42
                          },
                          "end": {
                            "line": 213,
                            "column": 47
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 5947,
                        "end": 5957,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 49
                          },
                          "end": {
                            "line": 213,
                            "column": 59
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 5959,
                      "end": 6050,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 61
                        },
                        "end": {
                          "line": 216,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 5969,
                          "end": 6022,
                          "loc": {
                            "start": {
                              "line": 214,
                              "column": 8
                            },
                            "end": {
                              "line": 214,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 5969,
                            "end": 6021,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 8
                              },
                              "end": {
                                "line": 214,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5969,
                              "end": 5993,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 8
                                },
                                "end": {
                                  "line": 214,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5969,
                                "end": 5973,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5974,
                                "end": 5993,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 5994,
                                "end": 5995,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "value": 1
                              },
                              {
                                "type": "Identifier",
                                "start": 5997,
                                "end": 6001,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 6003,
                                "end": 6008,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6010,
                                "end": 6020,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 6031,
                          "end": 6044,
                          "loc": {
                            "start": {
                              "line": 215,
                              "column": 8
                            },
                            "end": {
                              "line": 215,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 6038,
                            "end": 6043,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 15
                              },
                              "end": {
                                "line": 215,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 6057,
                  "end": 6307,
                  "loc": {
                    "start": {
                      "line": 218,
                      "column": 4
                    },
                    "end": {
                      "line": 224,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 6057,
                    "end": 6078,
                    "loc": {
                      "start": {
                        "line": 218,
                        "column": 4
                      },
                      "end": {
                        "line": 218,
                        "column": 25
                      },
                      "identifierName": "get_protocol_instance"
                    },
                    "name": "get_protocol_instance"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 6080,
                    "end": 6307,
                    "loc": {
                      "start": {
                        "line": 218,
                        "column": 27
                      },
                      "end": {
                        "line": 224,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 6089,
                        "end": 6093,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 36
                          },
                          "end": {
                            "line": 218,
                            "column": 40
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 6095,
                        "end": 6100,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 42
                          },
                          "end": {
                            "line": 218,
                            "column": 47
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 6102,
                        "end": 6112,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 49
                          },
                          "end": {
                            "line": 218,
                            "column": 59
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 6114,
                      "end": 6307,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 61
                        },
                        "end": {
                          "line": 224,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 6124,
                          "end": 6187,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 8
                            },
                            "end": {
                              "line": 221,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 6128,
                            "end": 6148,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 12
                              },
                              "end": {
                                "line": 219,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6128,
                              "end": 6141,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 12
                                },
                                "end": {
                                  "line": 219,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6128,
                                "end": 6132,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6133,
                                "end": 6141,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6142,
                                "end": 6147,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 6150,
                            "end": 6187,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 34
                              },
                              "end": {
                                "line": 221,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 6164,
                                "end": 6177,
                                "loc": {
                                  "start": {
                                    "line": 220,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 220,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 6171,
                                  "end": 6176,
                                  "loc": {
                                    "start": {
                                      "line": 220,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 220,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 6196,
                          "end": 6249,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 8
                            },
                            "end": {
                              "line": 222,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6196,
                            "end": 6248,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 8
                              },
                              "end": {
                                "line": 222,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6196,
                              "end": 6220,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 8
                                },
                                "end": {
                                  "line": 222,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6196,
                                "end": 6200,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6201,
                                "end": 6220,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 6221,
                                "end": 6222,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "value": 1
                              },
                              {
                                "type": "Identifier",
                                "start": 6224,
                                "end": 6228,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 6230,
                                "end": 6235,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6237,
                                "end": 6247,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 6258,
                          "end": 6301,
                          "loc": {
                            "start": {
                              "line": 223,
                              "column": 8
                            },
                            "end": {
                              "line": 223,
                              "column": 51
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 6265,
                            "end": 6300,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 15
                              },
                              "end": {
                                "line": 223,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6265,
                              "end": 6279,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 15
                                },
                                "end": {
                                  "line": 223,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6265,
                                "end": 6269,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6270,
                                "end": 6279,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 29
                                  },
                                  "identifierName": "to_number"
                                },
                                "name": "to_number"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 6280,
                                "end": 6299,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 6280,
                                  "end": 6296,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6280,
                                    "end": 6291,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6280,
                                      "end": 6285,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 35
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6286,
                                      "end": 6291,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 41
                                        },
                                        "identifierName": "split"
                                      },
                                      "name": "split"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 6292,
                                      "end": 6295,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 45
                                        }
                                      },
                                      "extra": {
                                        "rawValue": ".",
                                        "raw": "\".\""
                                      },
                                      "value": "."
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "NumericLiteral",
                                  "start": 6297,
                                  "end": 6298,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                "computed": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 6314,
                  "end": 6572,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 4
                    },
                    "end": {
                      "line": 233,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 6314,
                    "end": 6331,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 4
                      },
                      "end": {
                        "line": 226,
                        "column": 21
                      },
                      "identifierName": "get_protocol_type"
                    },
                    "name": "get_protocol_type"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 6333,
                    "end": 6572,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 23
                      },
                      "end": {
                        "line": 233,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 6342,
                        "end": 6347,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 32
                          },
                          "end": {
                            "line": 226,
                            "column": 37
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 6349,
                        "end": 6359,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 39
                          },
                          "end": {
                            "line": 226,
                            "column": 49
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 6361,
                      "end": 6572,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 51
                        },
                        "end": {
                          "line": 233,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 6371,
                          "end": 6434,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 6375,
                            "end": 6395,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 12
                              },
                              "end": {
                                "line": 227,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6375,
                              "end": 6388,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 12
                                },
                                "end": {
                                  "line": 227,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6375,
                                "end": 6379,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6380,
                                "end": 6388,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6389,
                                "end": 6394,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 6397,
                            "end": 6434,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 34
                              },
                              "end": {
                                "line": 229,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 6411,
                                "end": 6424,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 6418,
                                  "end": 6423,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 6443,
                          "end": 6485,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 8
                            },
                            "end": {
                              "line": 230,
                              "column": 50
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6443,
                            "end": 6484,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 8
                              },
                              "end": {
                                "line": 230,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6443,
                              "end": 6465,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 8
                                },
                                "end": {
                                  "line": 230,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6443,
                                "end": 6447,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6448,
                                "end": 6465,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 30
                                  },
                                  "identifierName": "require_object_id"
                                },
                                "name": "require_object_id"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6466,
                                "end": 6471,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 36
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6473,
                                "end": 6483,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 48
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 6494,
                          "end": 6524,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 38
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 6498,
                              "end": 6523,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 12
                                },
                                "end": {
                                  "line": 231,
                                  "column": 37
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 6498,
                                "end": 6504,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 18
                                  },
                                  "identifierName": "values"
                                },
                                "name": "values"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 6507,
                                "end": 6523,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 37
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6507,
                                  "end": 6518,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6507,
                                    "end": 6512,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 26
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6513,
                                    "end": 6518,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 32
                                      },
                                      "identifierName": "split"
                                    },
                                    "name": "split"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 6519,
                                    "end": 6522,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 36
                                      }
                                    },
                                    "extra": {
                                      "rawValue": ".",
                                      "raw": "\".\""
                                    },
                                    "value": "."
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 6533,
                          "end": 6566,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 41
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 6540,
                            "end": 6565,
                            "loc": {
                              "start": {
                                "line": 232,
                                "column": 15
                              },
                              "end": {
                                "line": 232,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6540,
                              "end": 6554,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 15
                                },
                                "end": {
                                  "line": 232,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6540,
                                "end": 6544,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6545,
                                "end": 6554,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 29
                                  },
                                  "identifierName": "to_number"
                                },
                                "name": "to_number"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 6555,
                                "end": 6564,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6555,
                                  "end": 6561,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 36
                                    },
                                    "identifierName": "values"
                                  },
                                  "name": "values"
                                },
                                "property": {
                                  "type": "NumericLiteral",
                                  "start": 6562,
                                  "end": 6563,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 38
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "value": 1
                                },
                                "computed": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 6579,
                  "end": 6826,
                  "loc": {
                    "start": {
                      "line": 235,
                      "column": 4
                    },
                    "end": {
                      "line": 241,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 6579,
                    "end": 6601,
                    "loc": {
                      "start": {
                        "line": 235,
                        "column": 4
                      },
                      "end": {
                        "line": 235,
                        "column": 26
                      },
                      "identifierName": "get_protocol_type_name"
                    },
                    "name": "get_protocol_type_name"
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 6602,
                      "end": 6607,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 27
                        },
                        "end": {
                          "line": 235,
                          "column": 32
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "Identifier",
                      "start": 6609,
                      "end": 6619,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 34
                        },
                        "end": {
                          "line": 235,
                          "column": 44
                        },
                        "identifierName": "field_name"
                      },
                      "name": "field_name"
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 6621,
                    "end": 6826,
                    "loc": {
                      "start": {
                        "line": 235,
                        "column": 46
                      },
                      "end": {
                        "line": 241,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 6631,
                        "end": 6694,
                        "loc": {
                          "start": {
                            "line": 236,
                            "column": 8
                          },
                          "end": {
                            "line": 238,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 6635,
                          "end": 6655,
                          "loc": {
                            "start": {
                              "line": 236,
                              "column": 12
                            },
                            "end": {
                              "line": 236,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6635,
                            "end": 6648,
                            "loc": {
                              "start": {
                                "line": 236,
                                "column": 12
                              },
                              "end": {
                                "line": 236,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6635,
                              "end": 6639,
                              "loc": {
                                "start": {
                                  "line": 236,
                                  "column": 12
                                },
                                "end": {
                                  "line": 236,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6640,
                              "end": 6648,
                              "loc": {
                                "start": {
                                  "line": 236,
                                  "column": 17
                                },
                                "end": {
                                  "line": 236,
                                  "column": 25
                                },
                                "identifierName": "is_empty"
                              },
                              "name": "is_empty"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6649,
                              "end": 6654,
                              "loc": {
                                "start": {
                                  "line": 236,
                                  "column": 26
                                },
                                "end": {
                                  "line": 236,
                                  "column": 31
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 6657,
                          "end": 6694,
                          "loc": {
                            "start": {
                              "line": 236,
                              "column": 34
                            },
                            "end": {
                              "line": 238,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 6671,
                              "end": 6684,
                              "loc": {
                                "start": {
                                  "line": 237,
                                  "column": 12
                                },
                                "end": {
                                  "line": 237,
                                  "column": 25
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 6678,
                                "end": 6683,
                                "loc": {
                                  "start": {
                                    "line": 237,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 237,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "VariableDeclaration",
                        "start": 6703,
                        "end": 6759,
                        "loc": {
                          "start": {
                            "line": 239,
                            "column": 8
                          },
                          "end": {
                            "line": 239,
                            "column": 64
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 6707,
                            "end": 6758,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 12
                              },
                              "end": {
                                "line": 239,
                                "column": 63
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 6707,
                              "end": 6714,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 12
                                },
                                "end": {
                                  "line": 239,
                                  "column": 19
                                },
                                "identifierName": "type_id"
                              },
                              "name": "type_id"
                            },
                            "init": {
                              "type": "CallExpression",
                              "start": 6717,
                              "end": 6758,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 22
                                },
                                "end": {
                                  "line": 239,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6717,
                                "end": 6739,
                                "loc": {
                                  "start": {
                                    "line": 239,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 239,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6717,
                                  "end": 6721,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 26
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6722,
                                  "end": 6739,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 44
                                    },
                                    "identifierName": "get_protocol_type"
                                  },
                                  "name": "get_protocol_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6740,
                                  "end": 6745,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 50
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6747,
                                  "end": 6757,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 62
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      {
                        "type": "ReturnStatement",
                        "start": 6768,
                        "end": 6820,
                        "loc": {
                          "start": {
                            "line": 240,
                            "column": 8
                          },
                          "end": {
                            "line": 240,
                            "column": 60
                          }
                        },
                        "argument": {
                          "type": "MemberExpression",
                          "start": 6775,
                          "end": 6819,
                          "loc": {
                            "start": {
                              "line": 240,
                              "column": 15
                            },
                            "end": {
                              "line": 240,
                              "column": 59
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 6775,
                            "end": 6810,
                            "loc": {
                              "start": {
                                "line": 240,
                                "column": 15
                              },
                              "end": {
                                "line": 240,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6775,
                              "end": 6786,
                              "loc": {
                                "start": {
                                  "line": 240,
                                  "column": 15
                                },
                                "end": {
                                  "line": 240,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6775,
                                "end": 6781,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 21
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6782,
                                "end": 6786,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 26
                                  },
                                  "identifierName": "keys"
                                },
                                "name": "keys"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 6787,
                                "end": 6809,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6787,
                                  "end": 6797,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 37
                                    },
                                    "identifierName": "ChainTypes"
                                  },
                                  "name": "ChainTypes"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6798,
                                  "end": 6809,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 49
                                    },
                                    "identifierName": "object_type"
                                  },
                                  "name": "object_type"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6811,
                            "end": 6818,
                            "loc": {
                              "start": {
                                "line": 240,
                                "column": 51
                              },
                              "end": {
                                "line": 240,
                                "column": 58
                              },
                              "identifierName": "type_id"
                            },
                            "name": "type_id"
                          },
                          "computed": true
                        }
                      }
                    ],
                    "directives": []
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 6833,
                  "end": 6987,
                  "loc": {
                    "start": {
                      "line": 243,
                      "column": 4
                    },
                    "end": {
                      "line": 246,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 6833,
                    "end": 6860,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 4
                      },
                      "end": {
                        "line": 243,
                        "column": 31
                      },
                      "identifierName": "require_implementation_type"
                    },
                    "name": "require_implementation_type"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 6862,
                    "end": 6987,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 33
                      },
                      "end": {
                        "line": 246,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 6871,
                        "end": 6875,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 42
                          },
                          "end": {
                            "line": 243,
                            "column": 46
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 6877,
                        "end": 6882,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 48
                          },
                          "end": {
                            "line": 243,
                            "column": 53
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 6884,
                        "end": 6894,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 55
                          },
                          "end": {
                            "line": 243,
                            "column": 65
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 6896,
                      "end": 6987,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 67
                        },
                        "end": {
                          "line": 246,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6906,
                          "end": 6959,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 8
                            },
                            "end": {
                              "line": 244,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6906,
                            "end": 6958,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 8
                              },
                              "end": {
                                "line": 244,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6906,
                              "end": 6930,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 8
                                },
                                "end": {
                                  "line": 244,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6906,
                                "end": 6910,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6911,
                                "end": 6930,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 6931,
                                "end": 6932,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 2,
                                  "raw": "2"
                                },
                                "value": 2
                              },
                              {
                                "type": "Identifier",
                                "start": 6934,
                                "end": 6938,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 6940,
                                "end": 6945,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6947,
                                "end": 6957,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 6968,
                          "end": 6981,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 8
                            },
                            "end": {
                              "line": 245,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 6975,
                            "end": 6980,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 15
                              },
                              "end": {
                                "line": 245,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectProperty",
                  "start": 6994,
                  "end": 7250,
                  "loc": {
                    "start": {
                      "line": 248,
                      "column": 4
                    },
                    "end": {
                      "line": 254,
                      "column": 5
                    }
                  },
                  "method": false,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 6994,
                    "end": 7021,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 4
                      },
                      "end": {
                        "line": 248,
                        "column": 31
                      },
                      "identifierName": "get_implementation_instance"
                    },
                    "name": "get_implementation_instance"
                  },
                  "value": {
                    "type": "FunctionExpression",
                    "start": 7023,
                    "end": 7250,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 33
                      },
                      "end": {
                        "line": 254,
                        "column": 5
                      }
                    },
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 7032,
                        "end": 7036,
                        "loc": {
                          "start": {
                            "line": 248,
                            "column": 42
                          },
                          "end": {
                            "line": 248,
                            "column": 46
                          },
                          "identifierName": "type"
                        },
                        "name": "type"
                      },
                      {
                        "type": "Identifier",
                        "start": 7038,
                        "end": 7043,
                        "loc": {
                          "start": {
                            "line": 248,
                            "column": 48
                          },
                          "end": {
                            "line": 248,
                            "column": 53
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 7045,
                        "end": 7055,
                        "loc": {
                          "start": {
                            "line": 248,
                            "column": 55
                          },
                          "end": {
                            "line": 248,
                            "column": 65
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 7057,
                      "end": 7250,
                      "loc": {
                        "start": {
                          "line": 248,
                          "column": 67
                        },
                        "end": {
                          "line": 254,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 7067,
                          "end": 7130,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 8
                            },
                            "end": {
                              "line": 251,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 7071,
                            "end": 7091,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 12
                              },
                              "end": {
                                "line": 249,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7071,
                              "end": 7084,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 12
                                },
                                "end": {
                                  "line": 249,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7071,
                                "end": 7075,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7076,
                                "end": 7084,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7085,
                                "end": 7090,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 7093,
                            "end": 7130,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 34
                              },
                              "end": {
                                "line": 251,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 7107,
                                "end": 7120,
                                "loc": {
                                  "start": {
                                    "line": 250,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 250,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 7114,
                                  "end": 7119,
                                  "loc": {
                                    "start": {
                                      "line": 250,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 250,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 7139,
                          "end": 7192,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 8
                            },
                            "end": {
                              "line": 252,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 7139,
                            "end": 7191,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 8
                              },
                              "end": {
                                "line": 252,
                                "column": 60
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7139,
                              "end": 7163,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 8
                                },
                                "end": {
                                  "line": 252,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7139,
                                "end": 7143,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7144,
                                "end": 7163,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 32
                                  },
                                  "identifierName": "require_object_type"
                                },
                                "name": "require_object_type"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NumericLiteral",
                                "start": 7164,
                                "end": 7165,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": 2,
                                  "raw": "2"
                                },
                                "value": 2
                              },
                              {
                                "type": "Identifier",
                                "start": 7167,
                                "end": 7171,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 40
                                  },
                                  "identifierName": "type"
                                },
                                "name": "type"
                              },
                              {
                                "type": "Identifier",
                                "start": 7173,
                                "end": 7178,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 47
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 7180,
                                "end": 7190,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 59
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 7201,
                          "end": 7244,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 8
                            },
                            "end": {
                              "line": 253,
                              "column": 51
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 7208,
                            "end": 7243,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 15
                              },
                              "end": {
                                "line": 253,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7208,
                              "end": 7222,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 15
                                },
                                "end": {
                                  "line": 253,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7208,
                                "end": 7212,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7213,
                                "end": 7222,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 29
                                  },
                                  "identifierName": "to_number"
                                },
                                "name": "to_number"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 7223,
                                "end": 7242,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 7223,
                                  "end": 7239,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7223,
                                    "end": 7234,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 7223,
                                      "end": 7228,
                                      "loc": {
                                        "start": {
                                          "line": 253,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 253,
                                          "column": 35
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7229,
                                      "end": 7234,
                                      "loc": {
                                        "start": {
                                          "line": 253,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 253,
                                          "column": 41
                                        },
                                        "identifierName": "split"
                                      },
                                      "name": "split"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 7235,
                                      "end": 7238,
                                      "loc": {
                                        "start": {
                                          "line": 253,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 253,
                                          "column": 45
                                        }
                                      },
                                      "extra": {
                                        "rawValue": ".",
                                        "raw": "\".\""
                                      },
                                      "value": "."
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "NumericLiteral",
                                  "start": 7240,
                                  "end": 7241,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                "computed": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                },
                {
                  "type": "ObjectMethod",
                  "start": 7290,
                  "end": 8055,
                  "loc": {
                    "start": {
                      "line": 257,
                      "column": 4
                    },
                    "end": {
                      "line": 277,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 7290,
                    "end": 7303,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 4
                      },
                      "end": {
                        "line": 257,
                        "column": 17
                      },
                      "identifierName": "no_overflow53"
                    },
                    "name": "no_overflow53",
                    "leadingComments": null
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 7304,
                      "end": 7309,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 18
                        },
                        "end": {
                          "line": 257,
                          "column": 23
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 7311,
                      "end": 7326,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 25
                        },
                        "end": {
                          "line": 257,
                          "column": 40
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 7311,
                        "end": 7321,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 25
                          },
                          "end": {
                            "line": 257,
                            "column": 35
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 7324,
                        "end": 7326,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 38
                          },
                          "end": {
                            "line": 257,
                            "column": 40
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 7328,
                    "end": 8055,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 42
                      },
                      "end": {
                        "line": 277,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 7338,
                        "end": 7546,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 8
                          },
                          "end": {
                            "line": 263,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 7342,
                          "end": 7367,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 12
                            },
                            "end": {
                              "line": 258,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 7342,
                            "end": 7354,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 12
                              },
                              "end": {
                                "line": 258,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 7349,
                              "end": 7354,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 19
                                },
                                "end": {
                                  "line": 258,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 7359,
                            "end": 7367,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 29
                              },
                              "end": {
                                "line": 258,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "number",
                              "raw": "\"number\""
                            },
                            "value": "number"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 7369,
                          "end": 7546,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 39
                            },
                            "end": {
                              "line": 263,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "IfStatement",
                              "start": 7383,
                              "end": 7516,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 12
                                },
                                "end": {
                                  "line": 261,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "LogicalExpression",
                                "start": 7387,
                                "end": 7431,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 60
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 7387,
                                  "end": 7407,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 36
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 7387,
                                    "end": 7392,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 21
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 7395,
                                    "end": 7407,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 36
                                      },
                                      "identifierName": "MAX_SAFE_INT"
                                    },
                                    "name": "MAX_SAFE_INT"
                                  }
                                },
                                "operator": "||",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 7411,
                                  "end": 7431,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 7411,
                                    "end": 7416,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 45
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 7419,
                                    "end": 7431,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 60
                                      },
                                      "identifierName": "MIN_SAFE_INT"
                                    },
                                    "name": "MIN_SAFE_INT"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 7433,
                                "end": 7516,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 261,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ThrowStatement",
                                    "start": 7451,
                                    "end": 7502,
                                    "loc": {
                                      "start": {
                                        "line": 260,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 260,
                                        "column": 67
                                      }
                                    },
                                    "argument": {
                                      "type": "NewExpression",
                                      "start": 7457,
                                      "end": 7501,
                                      "loc": {
                                        "start": {
                                          "line": 260,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 260,
                                          "column": 66
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 7461,
                                        "end": 7466,
                                        "loc": {
                                          "start": {
                                            "line": 260,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 260,
                                            "column": 31
                                          },
                                          "identifierName": "Error"
                                        },
                                        "name": "Error"
                                      },
                                      "arguments": [
                                        {
                                          "type": "TemplateLiteral",
                                          "start": 7467,
                                          "end": 7500,
                                          "loc": {
                                            "start": {
                                              "line": 260,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 260,
                                              "column": 65
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 7479,
                                              "end": 7489,
                                              "loc": {
                                                "start": {
                                                  "line": 260,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 260,
                                                  "column": 54
                                                },
                                                "identifierName": "field_name"
                                              },
                                              "name": "field_name"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 7493,
                                              "end": 7498,
                                              "loc": {
                                                "start": {
                                                  "line": 260,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 260,
                                                  "column": 63
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 7468,
                                              "end": 7477,
                                              "loc": {
                                                "start": {
                                                  "line": 260,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 260,
                                                  "column": 42
                                                }
                                              },
                                              "value": {
                                                "raw": "overflow ",
                                                "cooked": "overflow "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 7490,
                                              "end": 7491,
                                              "loc": {
                                                "start": {
                                                  "line": 260,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 260,
                                                  "column": 56
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 7499,
                                              "end": 7499,
                                              "loc": {
                                                "start": {
                                                  "line": 260,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 260,
                                                  "column": 64
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 7529,
                              "end": 7536,
                              "loc": {
                                "start": {
                                  "line": 262,
                                  "column": 12
                                },
                                "end": {
                                  "line": 262,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 7555,
                        "end": 7802,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 8
                          },
                          "end": {
                            "line": 270,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 7559,
                          "end": 7584,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 12
                            },
                            "end": {
                              "line": 264,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 7559,
                            "end": 7571,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 12
                              },
                              "end": {
                                "line": 264,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 7566,
                              "end": 7571,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 19
                                },
                                "end": {
                                  "line": 264,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 7576,
                            "end": 7584,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 29
                              },
                              "end": {
                                "line": 264,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "string",
                              "raw": "\"string\""
                            },
                            "value": "string"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 7586,
                          "end": 7802,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 39
                            },
                            "end": {
                              "line": 270,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "start": 7600,
                              "end": 7626,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 12
                                },
                                "end": {
                                  "line": 265,
                                  "column": 38
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 7604,
                                  "end": 7625,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 37
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 7604,
                                    "end": 7607,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 19
                                      },
                                      "identifierName": "int"
                                    },
                                    "name": "int"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 7610,
                                    "end": 7625,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 37
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 7610,
                                      "end": 7618,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 30
                                        },
                                        "identifierName": "parseInt"
                                      },
                                      "name": "parseInt"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 7619,
                                        "end": 7624,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 36
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "IfStatement",
                              "start": 7639,
                              "end": 7772,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 12
                                },
                                "end": {
                                  "line": 268,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "LogicalExpression",
                                "start": 7643,
                                "end": 7687,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 60
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 7643,
                                  "end": 7663,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 36
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 7643,
                                    "end": 7648,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 21
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 7651,
                                    "end": 7663,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 36
                                      },
                                      "identifierName": "MAX_SAFE_INT"
                                    },
                                    "name": "MAX_SAFE_INT"
                                  }
                                },
                                "operator": "||",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 7667,
                                  "end": 7687,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 7667,
                                    "end": 7672,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 45
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 7675,
                                    "end": 7687,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 60
                                      },
                                      "identifierName": "MIN_SAFE_INT"
                                    },
                                    "name": "MIN_SAFE_INT"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 7689,
                                "end": 7772,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 268,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ThrowStatement",
                                    "start": 7707,
                                    "end": 7758,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 67
                                      }
                                    },
                                    "argument": {
                                      "type": "NewExpression",
                                      "start": 7713,
                                      "end": 7757,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 66
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 7717,
                                        "end": 7722,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 31
                                          },
                                          "identifierName": "Error"
                                        },
                                        "name": "Error"
                                      },
                                      "arguments": [
                                        {
                                          "type": "TemplateLiteral",
                                          "start": 7723,
                                          "end": 7756,
                                          "loc": {
                                            "start": {
                                              "line": 267,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 267,
                                              "column": 65
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 7735,
                                              "end": 7745,
                                              "loc": {
                                                "start": {
                                                  "line": 267,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 267,
                                                  "column": 54
                                                },
                                                "identifierName": "field_name"
                                              },
                                              "name": "field_name"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 7749,
                                              "end": 7754,
                                              "loc": {
                                                "start": {
                                                  "line": 267,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 267,
                                                  "column": 63
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 7724,
                                              "end": 7733,
                                              "loc": {
                                                "start": {
                                                  "line": 267,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 267,
                                                  "column": 42
                                                }
                                              },
                                              "value": {
                                                "raw": "overflow ",
                                                "cooked": "overflow "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 7746,
                                              "end": 7747,
                                              "loc": {
                                                "start": {
                                                  "line": 267,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 267,
                                                  "column": 56
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 7755,
                                              "end": 7755,
                                              "loc": {
                                                "start": {
                                                  "line": 267,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 267,
                                                  "column": 64
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 7785,
                              "end": 7792,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 12
                                },
                                "end": {
                                  "line": 269,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 7811,
                        "end": 7973,
                        "loc": {
                          "start": {
                            "line": 271,
                            "column": 8
                          },
                          "end": {
                            "line": 275,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 7815,
                          "end": 7833,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 12
                            },
                            "end": {
                              "line": 271,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7815,
                            "end": 7826,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 12
                              },
                              "end": {
                                "line": 271,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7815,
                              "end": 7819,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 12
                                },
                                "end": {
                                  "line": 271,
                                  "column": 16
                                },
                                "identifierName": "Long"
                              },
                              "name": "Long"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7820,
                              "end": 7826,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 17
                                },
                                "end": {
                                  "line": 271,
                                  "column": 23
                                },
                                "identifierName": "isLong"
                              },
                              "name": "isLong"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7827,
                              "end": 7832,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 24
                                },
                                "end": {
                                  "line": 271,
                                  "column": 29
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ]
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 7835,
                          "end": 7973,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 32
                            },
                            "end": {
                              "line": 275,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 7897,
                              "end": 7943,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 12
                                },
                                "end": {
                                  "line": 273,
                                  "column": 58
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 7897,
                                "end": 7942,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7897,
                                  "end": 7915,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7897,
                                    "end": 7901,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 16
                                      }
                                    },
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7902,
                                    "end": 7915,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 30
                                      },
                                      "identifierName": "no_overflow53"
                                    },
                                    "name": "no_overflow53"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 7916,
                                    "end": 7929,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7916,
                                      "end": 7927,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7916,
                                        "end": 7921,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 36
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7922,
                                        "end": 7927,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 42
                                          },
                                          "identifierName": "toInt"
                                        },
                                        "name": "toInt"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 7931,
                                    "end": 7941,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 56
                                      },
                                      "identifierName": "field_name"
                                    },
                                    "name": "field_name"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": " typeof value.toInt() is 'number'",
                                  "start": 7849,
                                  "end": 7884,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 47
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 7956,
                              "end": 7963,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 12
                                },
                                "end": {
                                  "line": 274,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ThrowStatement",
                        "start": 7982,
                        "end": 8049,
                        "loc": {
                          "start": {
                            "line": 276,
                            "column": 8
                          },
                          "end": {
                            "line": 276,
                            "column": 75
                          }
                        },
                        "argument": {
                          "type": "TemplateLiteral",
                          "start": 7988,
                          "end": 8048,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 14
                            },
                            "end": {
                              "line": 276,
                              "column": 74
                            }
                          },
                          "expressions": [
                            {
                              "type": "Identifier",
                              "start": 8008,
                              "end": 8018,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 34
                                },
                                "end": {
                                  "line": 276,
                                  "column": 44
                                },
                                "identifierName": "field_name"
                              },
                              "name": "field_name"
                            },
                            {
                              "type": "UnaryExpression",
                              "start": 8024,
                              "end": 8036,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 50
                                },
                                "end": {
                                  "line": 276,
                                  "column": 62
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 8031,
                                "end": 8036,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 62
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 8041,
                              "end": 8046,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 67
                                },
                                "end": {
                                  "line": 276,
                                  "column": 72
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ],
                          "quasis": [
                            {
                              "type": "TemplateElement",
                              "start": 7989,
                              "end": 8006,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 15
                                },
                                "end": {
                                  "line": 276,
                                  "column": 32
                                }
                              },
                              "value": {
                                "raw": "unsupported type ",
                                "cooked": "unsupported type "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 8019,
                              "end": 8022,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 45
                                },
                                "end": {
                                  "line": 276,
                                  "column": 48
                                }
                              },
                              "value": {
                                "raw": ": (",
                                "cooked": ": ("
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 8037,
                              "end": 8039,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 63
                                },
                                "end": {
                                  "line": 276,
                                  "column": 65
                                }
                              },
                              "value": {
                                "raw": ") ",
                                "cooked": ") "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 8047,
                              "end": 8047,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 73
                                },
                                "end": {
                                  "line": 276,
                                  "column": 73
                                }
                              },
                              "value": {
                                "raw": "",
                                "cooked": ""
                              },
                              "tail": true
                            }
                          ]
                        }
                      }
                    ],
                    "directives": []
                  },
                  "leadingComments": [
                    {
                      "type": "CommentLine",
                      "value": " signed / unsigned decimal",
                      "start": 7257,
                      "end": 7285,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 4
                        },
                        "end": {
                          "line": 256,
                          "column": 32
                        }
                      }
                    }
                  ]
                },
                {
                  "type": "ObjectMethod",
                  "start": 8106,
                  "end": 9597,
                  "loc": {
                    "start": {
                      "line": 280,
                      "column": 4
                    },
                    "end": {
                      "line": 320,
                      "column": 5
                    }
                  },
                  "method": true,
                  "shorthand": false,
                  "computed": false,
                  "key": {
                    "type": "Identifier",
                    "start": 8106,
                    "end": 8119,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 4
                      },
                      "end": {
                        "line": 280,
                        "column": 17
                      },
                      "identifierName": "no_overflow64"
                    },
                    "name": "no_overflow64",
                    "leadingComments": null
                  },
                  "kind": "method",
                  "id": null,
                  "generator": false,
                  "expression": false,
                  "async": false,
                  "params": [
                    {
                      "type": "Identifier",
                      "start": 8120,
                      "end": 8125,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 18
                        },
                        "end": {
                          "line": 280,
                          "column": 23
                        },
                        "identifierName": "value"
                      },
                      "name": "value"
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 8127,
                      "end": 8142,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 25
                        },
                        "end": {
                          "line": 280,
                          "column": 40
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 8127,
                        "end": 8137,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 25
                          },
                          "end": {
                            "line": 280,
                            "column": 35
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 8140,
                        "end": 8142,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 38
                          },
                          "end": {
                            "line": 280,
                            "column": 40
                          }
                        },
                        "extra": {
                          "rawValue": "",
                          "raw": "\"\""
                        },
                        "value": ""
                      }
                    },
                    {
                      "type": "AssignmentPattern",
                      "start": 8144,
                      "end": 8160,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 42
                        },
                        "end": {
                          "line": 280,
                          "column": 58
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 8144,
                        "end": 8152,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 42
                          },
                          "end": {
                            "line": 280,
                            "column": 50
                          },
                          "identifierName": "unsigned"
                        },
                        "name": "unsigned"
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 8155,
                        "end": 8160,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 53
                          },
                          "end": {
                            "line": 280,
                            "column": 58
                          }
                        },
                        "value": false
                      }
                    }
                  ],
                  "body": {
                    "type": "BlockStatement",
                    "start": 8162,
                    "end": 9597,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 60
                      },
                      "end": {
                        "line": 320,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "IfStatement",
                        "start": 8228,
                        "end": 8283,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 8
                          },
                          "end": {
                            "line": 284,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "CallExpression",
                          "start": 8232,
                          "end": 8250,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 12
                            },
                            "end": {
                              "line": 282,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8232,
                            "end": 8243,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 12
                              },
                              "end": {
                                "line": 282,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8232,
                              "end": 8236,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 12
                                },
                                "end": {
                                  "line": 282,
                                  "column": 16
                                },
                                "identifierName": "Long"
                              },
                              "name": "Long",
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8237,
                              "end": 8243,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 17
                                },
                                "end": {
                                  "line": 282,
                                  "column": 23
                                },
                                "identifierName": "isLong"
                              },
                              "name": "isLong"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 8244,
                              "end": 8249,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 24
                                },
                                "end": {
                                  "line": 282,
                                  "column": 29
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ],
                          "leadingComments": null
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 8252,
                          "end": 8283,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 32
                            },
                            "end": {
                              "line": 284,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 8266,
                              "end": 8273,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 12
                                },
                                "end": {
                                  "line": 283,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": [],
                          "trailingComments": null
                        },
                        "alternate": null,
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " https://github.com/dcodeIO/Long.js/issues/20",
                            "start": 8172,
                            "end": 8219,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 8
                              },
                              "end": {
                                "line": 281,
                                "column": 55
                              }
                            }
                          }
                        ],
                        "trailingComments": [
                          {
                            "type": "CommentLine",
                            "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
                            "start": 8293,
                            "end": 8366,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 8
                              },
                              "end": {
                                "line": 286,
                                "column": 81
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "IfStatement",
                        "start": 8375,
                        "end": 8530,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 8
                          },
                          "end": {
                            "line": 290,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "LogicalExpression",
                          "start": 8379,
                          "end": 8425,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 12
                            },
                            "end": {
                              "line": 287,
                              "column": 58
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 8379,
                            "end": 8400,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 12
                              },
                              "end": {
                                "line": 287,
                                "column": 33
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 8379,
                              "end": 8386,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 12
                                },
                                "end": {
                                  "line": 287,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8379,
                                "end": 8384,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 17
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8385,
                                "end": 8386,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 19
                                  },
                                  "identifierName": "t"
                                },
                                "name": "t"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "operator": "!==",
                            "right": {
                              "type": "Identifier",
                              "start": 8391,
                              "end": 8400,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 24
                                },
                                "end": {
                                  "line": 287,
                                  "column": 33
                                },
                                "identifierName": "undefined"
                              },
                              "name": "undefined"
                            },
                            "leadingComments": null
                          },
                          "operator": "&&",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 8404,
                            "end": 8425,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 37
                              },
                              "end": {
                                "line": 287,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 8404,
                              "end": 8411,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 37
                                },
                                "end": {
                                  "line": 287,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8404,
                                "end": 8409,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 42
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8410,
                                "end": 8411,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 44
                                  },
                                  "identifierName": "s"
                                },
                                "name": "s"
                              },
                              "computed": false
                            },
                            "operator": "!==",
                            "right": {
                              "type": "Identifier",
                              "start": 8416,
                              "end": 8425,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 49
                                },
                                "end": {
                                  "line": 287,
                                  "column": 58
                                },
                                "identifierName": "undefined"
                              },
                              "name": "undefined"
                            }
                          },
                          "leadingComments": null
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 8427,
                          "end": 8530,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 60
                            },
                            "end": {
                              "line": 290,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 8441,
                              "end": 8500,
                              "loc": {
                                "start": {
                                  "line": 288,
                                  "column": 12
                                },
                                "end": {
                                  "line": 288,
                                  "column": 71
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 8441,
                                "end": 8499,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 70
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8441,
                                  "end": 8459,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8441,
                                    "end": 8445,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8446,
                                    "end": 8459,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 30
                                      },
                                      "identifierName": "no_overflow64"
                                    },
                                    "name": "no_overflow64"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 8460,
                                    "end": 8476,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8460,
                                      "end": 8474,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 45
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8460,
                                        "end": 8465,
                                        "loc": {
                                          "start": {
                                            "line": 288,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 288,
                                            "column": 36
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8466,
                                        "end": 8474,
                                        "loc": {
                                          "start": {
                                            "line": 288,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 288,
                                            "column": 45
                                          },
                                          "identifierName": "toString"
                                        },
                                        "name": "toString"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 8478,
                                    "end": 8488,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 59
                                      },
                                      "identifierName": "field_name"
                                    },
                                    "name": "field_name"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 8490,
                                    "end": 8498,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 69
                                      },
                                      "identifierName": "unsigned"
                                    },
                                    "name": "unsigned"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 8513,
                              "end": 8520,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 12
                                },
                                "end": {
                                  "line": 289,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null,
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
                            "start": 8293,
                            "end": 8366,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 8
                              },
                              "end": {
                                "line": 286,
                                "column": 81
                              }
                            }
                          }
                        ]
                      },
                      {
                        "type": "IfStatement",
                        "start": 8540,
                        "end": 9297,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 8
                          },
                          "end": {
                            "line": 311,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 8544,
                          "end": 8569,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 12
                            },
                            "end": {
                              "line": 292,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 8544,
                            "end": 8556,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 8551,
                              "end": 8556,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 19
                                },
                                "end": {
                                  "line": 292,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 8561,
                            "end": 8569,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 29
                              },
                              "end": {
                                "line": 292,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "string",
                              "raw": "\"string\""
                            },
                            "value": "string"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 8571,
                          "end": 9297,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 39
                            },
                            "end": {
                              "line": 311,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 8650,
                              "end": 8683,
                              "loc": {
                                "start": {
                                  "line": 294,
                                  "column": 12
                                },
                                "end": {
                                  "line": 294,
                                  "column": 45
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 8650,
                                "end": 8682,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 44
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 8650,
                                  "end": 8655,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 17
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value",
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "CallExpression",
                                  "start": 8658,
                                  "end": 8682,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 44
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8658,
                                    "end": 8671,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8658,
                                      "end": 8663,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 25
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8664,
                                      "end": 8671,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 33
                                        },
                                        "identifierName": "replace"
                                      },
                                      "name": "replace"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "RegExpLiteral",
                                      "start": 8672,
                                      "end": 8677,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 39
                                        }
                                      },
                                      "extra": {
                                        "raw": "/^0+/"
                                      },
                                      "pattern": "^0+",
                                      "flags": ""
                                    },
                                    {
                                      "type": "StringLiteral",
                                      "start": 8679,
                                      "end": 8681,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 43
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "",
                                        "raw": "\"\""
                                      },
                                      "value": ""
                                    }
                                  ]
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": " remove leading zeros, will cause a false positive",
                                  "start": 8585,
                                  "end": 8637,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 64
                                    }
                                  }
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": " remove trailing zeros",
                                  "start": 8696,
                                  "end": 8720,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "WhileStatement",
                              "start": 8733,
                              "end": 8835,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 12
                                },
                                "end": {
                                  "line": 298,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "CallExpression",
                                "start": 8740,
                                "end": 8756,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8740,
                                  "end": 8749,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 296,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "RegExpLiteral",
                                    "start": 8740,
                                    "end": 8744,
                                    "loc": {
                                      "start": {
                                        "line": 296,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 296,
                                        "column": 23
                                      }
                                    },
                                    "extra": {
                                      "raw": "/0$/"
                                    },
                                    "leadingComments": null,
                                    "pattern": "0$",
                                    "flags": ""
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8745,
                                    "end": 8749,
                                    "loc": {
                                      "start": {
                                        "line": 296,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 296,
                                        "column": 28
                                      },
                                      "identifierName": "test"
                                    },
                                    "name": "test"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 8750,
                                    "end": 8755,
                                    "loc": {
                                      "start": {
                                        "line": 296,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 296,
                                        "column": 34
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "body": {
                                "type": "BlockStatement",
                                "start": 8758,
                                "end": 8835,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 8776,
                                    "end": 8821,
                                    "loc": {
                                      "start": {
                                        "line": 297,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 297,
                                        "column": 61
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 8776,
                                      "end": 8820,
                                      "loc": {
                                        "start": {
                                          "line": 297,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 297,
                                          "column": 60
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 8776,
                                        "end": 8781,
                                        "loc": {
                                          "start": {
                                            "line": 297,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 297,
                                            "column": 21
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 8784,
                                        "end": 8820,
                                        "loc": {
                                          "start": {
                                            "line": 297,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 297,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8784,
                                          "end": 8799,
                                          "loc": {
                                            "start": {
                                              "line": 297,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 297,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8784,
                                            "end": 8789,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 29
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8790,
                                            "end": 8799,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 39
                                              },
                                              "identifierName": "substring"
                                            },
                                            "name": "substring"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "NumericLiteral",
                                            "start": 8800,
                                            "end": 8801,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 41
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "value": 0
                                          },
                                          {
                                            "type": "BinaryExpression",
                                            "start": 8803,
                                            "end": 8819,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 59
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 8803,
                                              "end": 8815,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 8803,
                                                "end": 8808,
                                                "loc": {
                                                  "start": {
                                                    "line": 297,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 297,
                                                    "column": 48
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 8809,
                                                "end": 8815,
                                                "loc": {
                                                  "start": {
                                                    "line": 297,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 297,
                                                    "column": 55
                                                  },
                                                  "identifierName": "length"
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 8818,
                                              "end": 8819,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 59
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": " remove trailing zeros",
                                  "start": 8696,
                                  "end": 8720,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            {
                              "type": "IfStatement",
                              "start": 8848,
                              "end": 8987,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 12
                                },
                                "end": {
                                  "line": 302,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "CallExpression",
                                "start": 8852,
                                "end": 8869,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8852,
                                  "end": 8862,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 26
                                    }
                                  },
                                  "object": {
                                    "type": "RegExpLiteral",
                                    "start": 8852,
                                    "end": 8857,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 21
                                      }
                                    },
                                    "extra": {
                                      "raw": "/\\.$/"
                                    },
                                    "pattern": "\\.$",
                                    "flags": ""
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8858,
                                    "end": 8862,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 26
                                      },
                                      "identifierName": "test"
                                    },
                                    "name": "test"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 8863,
                                    "end": 8868,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 32
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                ]
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 8871,
                                "end": 8987,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 8928,
                                    "end": 8973,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 61
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 8928,
                                      "end": 8972,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 60
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 8928,
                                        "end": 8933,
                                        "loc": {
                                          "start": {
                                            "line": 301,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 301,
                                            "column": 21
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value",
                                        "leadingComments": null
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 8936,
                                        "end": 8972,
                                        "loc": {
                                          "start": {
                                            "line": 301,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 301,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8936,
                                          "end": 8951,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8936,
                                            "end": 8941,
                                            "loc": {
                                              "start": {
                                                "line": 301,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 301,
                                                "column": 29
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8942,
                                            "end": 8951,
                                            "loc": {
                                              "start": {
                                                "line": 301,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 301,
                                                "column": 39
                                              },
                                              "identifierName": "substring"
                                            },
                                            "name": "substring"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "NumericLiteral",
                                            "start": 8952,
                                            "end": 8953,
                                            "loc": {
                                              "start": {
                                                "line": 301,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 301,
                                                "column": 41
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "value": 0
                                          },
                                          {
                                            "type": "BinaryExpression",
                                            "start": 8955,
                                            "end": 8971,
                                            "loc": {
                                              "start": {
                                                "line": 301,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 301,
                                                "column": 59
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 8955,
                                              "end": 8967,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 8955,
                                                "end": 8960,
                                                "loc": {
                                                  "start": {
                                                    "line": 301,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 301,
                                                    "column": 48
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 8961,
                                                "end": 8967,
                                                "loc": {
                                                  "start": {
                                                    "line": 301,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 301,
                                                    "column": 55
                                                  },
                                                  "identifierName": "length"
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 8970,
                                              "end": 8971,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 59
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            }
                                          }
                                        ]
                                      },
                                      "leadingComments": null
                                    },
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " remove trailing dot",
                                        "start": 8889,
                                        "end": 8911,
                                        "loc": {
                                          "start": {
                                            "line": 300,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 300,
                                            "column": 38
                                          }
                                        }
                                      }
                                    ]
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "IfStatement",
                              "start": 9000,
                              "end": 9062,
                              "loc": {
                                "start": {
                                  "line": 303,
                                  "column": 12
                                },
                                "end": {
                                  "line": 305,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 9004,
                                "end": 9016,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 28
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 9004,
                                  "end": 9009,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 21
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 9014,
                                  "end": 9016,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 28
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "",
                                    "raw": "\"\""
                                  },
                                  "value": ""
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 9018,
                                "end": 9062,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 9036,
                                    "end": 9048,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 28
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 9036,
                                      "end": 9047,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 27
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9036,
                                        "end": 9041,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 21
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "right": {
                                        "type": "StringLiteral",
                                        "start": 9044,
                                        "end": 9047,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 27
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "0",
                                          "raw": "\"0\""
                                        },
                                        "value": "0"
                                      }
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 9075,
                              "end": 9137,
                              "loc": {
                                "start": {
                                  "line": 306,
                                  "column": 12
                                },
                                "end": {
                                  "line": 306,
                                  "column": 74
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 9079,
                                  "end": 9136,
                                  "loc": {
                                    "start": {
                                      "line": 306,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 306,
                                      "column": 73
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 9079,
                                    "end": 9090,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 27
                                      },
                                      "identifierName": "long_string"
                                    },
                                    "name": "long_string"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 9093,
                                    "end": 9136,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9093,
                                      "end": 9134,
                                      "loc": {
                                        "start": {
                                          "line": 306,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 306,
                                          "column": 71
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 9093,
                                        "end": 9125,
                                        "loc": {
                                          "start": {
                                            "line": 306,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 306,
                                            "column": 62
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9093,
                                          "end": 9108,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9093,
                                            "end": 9097,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 34
                                              },
                                              "identifierName": "Long"
                                            },
                                            "name": "Long"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9098,
                                            "end": 9108,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 45
                                              },
                                              "identifierName": "fromString"
                                            },
                                            "name": "fromString"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 9109,
                                            "end": 9114,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 51
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 9116,
                                            "end": 9124,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 61
                                              },
                                              "identifierName": "unsigned"
                                            },
                                            "name": "unsigned"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9126,
                                        "end": 9134,
                                        "loc": {
                                          "start": {
                                            "line": 306,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 306,
                                            "column": 71
                                          },
                                          "identifierName": "toString"
                                        },
                                        "name": "toString"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "IfStatement",
                              "start": 9150,
                              "end": 9267,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 12
                                },
                                "end": {
                                  "line": 309,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 9154,
                                "end": 9182,
                                "loc": {
                                  "start": {
                                    "line": 307,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 307,
                                    "column": 44
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 9154,
                                  "end": 9165,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 27
                                    },
                                    "identifierName": "long_string"
                                  },
                                  "name": "long_string"
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 9170,
                                  "end": 9182,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 44
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9170,
                                    "end": 9180,
                                    "loc": {
                                      "start": {
                                        "line": 307,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 307,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9170,
                                      "end": 9175,
                                      "loc": {
                                        "start": {
                                          "line": 307,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 307,
                                          "column": 37
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9176,
                                      "end": 9180,
                                      "loc": {
                                        "start": {
                                          "line": 307,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 307,
                                          "column": 42
                                        },
                                        "identifierName": "trim"
                                      },
                                      "name": "trim"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 9184,
                                "end": 9267,
                                "loc": {
                                  "start": {
                                    "line": 307,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ThrowStatement",
                                    "start": 9202,
                                    "end": 9253,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 67
                                      }
                                    },
                                    "argument": {
                                      "type": "NewExpression",
                                      "start": 9208,
                                      "end": 9252,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 66
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 9212,
                                        "end": 9217,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 31
                                          },
                                          "identifierName": "Error"
                                        },
                                        "name": "Error"
                                      },
                                      "arguments": [
                                        {
                                          "type": "TemplateLiteral",
                                          "start": 9218,
                                          "end": 9251,
                                          "loc": {
                                            "start": {
                                              "line": 308,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 308,
                                              "column": 65
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 9230,
                                              "end": 9240,
                                              "loc": {
                                                "start": {
                                                  "line": 308,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 308,
                                                  "column": 54
                                                },
                                                "identifierName": "field_name"
                                              },
                                              "name": "field_name"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 9244,
                                              "end": 9249,
                                              "loc": {
                                                "start": {
                                                  "line": 308,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 308,
                                                  "column": 63
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 9219,
                                              "end": 9228,
                                              "loc": {
                                                "start": {
                                                  "line": 308,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 308,
                                                  "column": 42
                                                }
                                              },
                                              "value": {
                                                "raw": "overflow ",
                                                "cooked": "overflow "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 9241,
                                              "end": 9242,
                                              "loc": {
                                                "start": {
                                                  "line": 308,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 308,
                                                  "column": 56
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 9250,
                                              "end": 9250,
                                              "loc": {
                                                "start": {
                                                  "line": 308,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 308,
                                                  "column": 64
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 9280,
                              "end": 9287,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 12
                                },
                                "end": {
                                  "line": 310,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "IfStatement",
                        "start": 9306,
                        "end": 9514,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 8
                          },
                          "end": {
                            "line": 317,
                            "column": 9
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 9310,
                          "end": 9335,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 12
                            },
                            "end": {
                              "line": 312,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "UnaryExpression",
                            "start": 9310,
                            "end": 9322,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 12
                              },
                              "end": {
                                "line": 312,
                                "column": 24
                              }
                            },
                            "operator": "typeof",
                            "prefix": true,
                            "argument": {
                              "type": "Identifier",
                              "start": 9317,
                              "end": 9322,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 19
                                },
                                "end": {
                                  "line": 312,
                                  "column": 24
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 9327,
                            "end": 9335,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 29
                              },
                              "end": {
                                "line": 312,
                                "column": 37
                              }
                            },
                            "extra": {
                              "rawValue": "number",
                              "raw": "\"number\""
                            },
                            "value": "number"
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 9337,
                          "end": 9514,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 39
                            },
                            "end": {
                              "line": 317,
                              "column": 9
                            }
                          },
                          "body": [
                            {
                              "type": "IfStatement",
                              "start": 9351,
                              "end": 9484,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 12
                                },
                                "end": {
                                  "line": 315,
                                  "column": 13
                                }
                              },
                              "test": {
                                "type": "LogicalExpression",
                                "start": 9355,
                                "end": 9399,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 313,
                                    "column": 60
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 9355,
                                  "end": 9375,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 36
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9355,
                                    "end": 9360,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 21
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 9363,
                                    "end": 9375,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 36
                                      },
                                      "identifierName": "MAX_SAFE_INT"
                                    },
                                    "name": "MAX_SAFE_INT"
                                  }
                                },
                                "operator": "||",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 9379,
                                  "end": 9399,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9379,
                                    "end": 9384,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 45
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 9387,
                                    "end": 9399,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 60
                                      },
                                      "identifierName": "MIN_SAFE_INT"
                                    },
                                    "name": "MIN_SAFE_INT"
                                  }
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 9401,
                                "end": 9484,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 315,
                                    "column": 13
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ThrowStatement",
                                    "start": 9419,
                                    "end": 9470,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 67
                                      }
                                    },
                                    "argument": {
                                      "type": "NewExpression",
                                      "start": 9425,
                                      "end": 9469,
                                      "loc": {
                                        "start": {
                                          "line": 314,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 314,
                                          "column": 66
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 9429,
                                        "end": 9434,
                                        "loc": {
                                          "start": {
                                            "line": 314,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 314,
                                            "column": 31
                                          },
                                          "identifierName": "Error"
                                        },
                                        "name": "Error"
                                      },
                                      "arguments": [
                                        {
                                          "type": "TemplateLiteral",
                                          "start": 9435,
                                          "end": 9468,
                                          "loc": {
                                            "start": {
                                              "line": 314,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 314,
                                              "column": 65
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 9447,
                                              "end": 9457,
                                              "loc": {
                                                "start": {
                                                  "line": 314,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 314,
                                                  "column": 54
                                                },
                                                "identifierName": "field_name"
                                              },
                                              "name": "field_name"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 9461,
                                              "end": 9466,
                                              "loc": {
                                                "start": {
                                                  "line": 314,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 314,
                                                  "column": 63
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 9436,
                                              "end": 9445,
                                              "loc": {
                                                "start": {
                                                  "line": 314,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 314,
                                                  "column": 42
                                                }
                                              },
                                              "value": {
                                                "raw": "overflow ",
                                                "cooked": "overflow "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 9458,
                                              "end": 9459,
                                              "loc": {
                                                "start": {
                                                  "line": 314,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 314,
                                                  "column": 56
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 9467,
                                              "end": 9467,
                                              "loc": {
                                                "start": {
                                                  "line": 314,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 314,
                                                  "column": 64
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": null
                            },
                            {
                              "type": "ReturnStatement",
                              "start": 9497,
                              "end": 9504,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 12
                                },
                                "end": {
                                  "line": 316,
                                  "column": 19
                                }
                              },
                              "argument": null
                            }
                          ],
                          "directives": []
                        },
                        "alternate": null
                      },
                      {
                        "type": "ThrowStatement",
                        "start": 9524,
                        "end": 9591,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 8
                          },
                          "end": {
                            "line": 319,
                            "column": 75
                          }
                        },
                        "argument": {
                          "type": "TemplateLiteral",
                          "start": 9530,
                          "end": 9590,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 14
                            },
                            "end": {
                              "line": 319,
                              "column": 74
                            }
                          },
                          "expressions": [
                            {
                              "type": "Identifier",
                              "start": 9550,
                              "end": 9560,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 34
                                },
                                "end": {
                                  "line": 319,
                                  "column": 44
                                },
                                "identifierName": "field_name"
                              },
                              "name": "field_name"
                            },
                            {
                              "type": "UnaryExpression",
                              "start": 9566,
                              "end": 9578,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 50
                                },
                                "end": {
                                  "line": 319,
                                  "column": 62
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 9573,
                                "end": 9578,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 62
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 9583,
                              "end": 9588,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 67
                                },
                                "end": {
                                  "line": 319,
                                  "column": 72
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          ],
                          "quasis": [
                            {
                              "type": "TemplateElement",
                              "start": 9531,
                              "end": 9548,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 15
                                },
                                "end": {
                                  "line": 319,
                                  "column": 32
                                }
                              },
                              "value": {
                                "raw": "unsupported type ",
                                "cooked": "unsupported type "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 9561,
                              "end": 9564,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 45
                                },
                                "end": {
                                  "line": 319,
                                  "column": 48
                                }
                              },
                              "value": {
                                "raw": ": (",
                                "cooked": ": ("
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 9579,
                              "end": 9581,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 63
                                },
                                "end": {
                                  "line": 319,
                                  "column": 65
                                }
                              },
                              "value": {
                                "raw": ") ",
                                "cooked": ") "
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 9589,
                              "end": 9589,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 73
                                },
                                "end": {
                                  "line": 319,
                                  "column": 73
                                }
                              },
                              "value": {
                                "raw": "",
                                "cooked": ""
                              },
                              "tail": true
                            }
                          ]
                        }
                      }
                    ],
                    "directives": []
                  },
                  "leadingComments": [
                    {
                      "type": "CommentLine",
                      "value": " signed / unsigned whole numbers only",
                      "start": 8062,
                      "end": 8101,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 4
                        },
                        "end": {
                          "line": 279,
                          "column": 43
                        }
                      }
                    }
                  ]
                }
              ]
            },
            "leadingComments": null
          }
        ],
        "kind": "var",
        "leadingComments": [],
        "name": "_",
        "trailingComments": []
      },
      {
        "type": "Identifier",
        "start": 9602,
        "end": 9621,
        "loc": {
          "start": {
            "line": 323,
            "column": 0
          },
          "end": {
            "line": 323,
            "column": 19
          }
        },
        "declaration": {
          "type": "Identifier",
          "start": 9617,
          "end": 9620,
          "loc": {
            "start": {
              "line": 323,
              "column": 15
            },
            "end": {
              "line": 323,
              "column": 18
            },
            "identifierName": "_my"
          },
          "name": "_my"
        },
        "name": "_",
        "leadingComments": [],
        "trailingComments": []
      },
      {
        "type": "ExportDefaultDeclaration",
        "start": 9602,
        "end": 9621,
        "loc": {
          "start": {
            "line": 323,
            "column": 0
          },
          "end": {
            "line": 323,
            "column": 19
          }
        },
        "declaration": {
          "type": "VariableDeclaration",
          "start": 386,
          "end": 9600,
          "loc": {
            "start": {
              "line": 12,
              "column": 0
            },
            "end": {
              "line": 321,
              "column": 2
            }
          },
          "declarations": [
            {
              "type": "VariableDeclarator",
              "start": 390,
              "end": 9599,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 321,
                  "column": 1
                }
              },
              "id": {
                "type": "Identifier",
                "start": 390,
                "end": 393,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 4
                  },
                  "end": {
                    "line": 12,
                    "column": 7
                  },
                  "identifierName": "_my"
                },
                "name": "_my",
                "leadingComments": null
              },
              "init": {
                "type": "ObjectExpression",
                "start": 396,
                "end": 9599,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 10
                  },
                  "end": {
                    "line": 321,
                    "column": 1
                  }
                },
                "properties": [
                  {
                    "type": "ObjectProperty",
                    "start": 402,
                    "end": 489,
                    "loc": {
                      "start": {
                        "line": 13,
                        "column": 4
                      },
                      "end": {
                        "line": 15,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 402,
                      "end": 410,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 4
                        },
                        "end": {
                          "line": 13,
                          "column": 12
                        },
                        "identifierName": "is_empty"
                      },
                      "name": "is_empty"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 412,
                      "end": 489,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 14
                        },
                        "end": {
                          "line": 15,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 421,
                          "end": 426,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 23
                            },
                            "end": {
                              "line": 13,
                              "column": 28
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 428,
                        "end": 489,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 30
                          },
                          "end": {
                            "line": 15,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 438,
                            "end": 483,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 8
                              },
                              "end": {
                                "line": 14,
                                "column": 53
                              }
                            },
                            "argument": {
                              "type": "LogicalExpression",
                              "start": 445,
                              "end": 482,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 15
                                },
                                "end": {
                                  "line": 14,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 445,
                                "end": 459,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 29
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 445,
                                  "end": 450,
                                  "loc": {
                                    "start": {
                                      "line": 14,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 14,
                                      "column": 20
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "NullLiteral",
                                  "start": 455,
                                  "end": 459,
                                  "loc": {
                                    "start": {
                                      "line": 14,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 14,
                                      "column": 29
                                    }
                                  }
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 463,
                                "end": 482,
                                "loc": {
                                  "start": {
                                    "line": 14,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 14,
                                    "column": 52
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 463,
                                  "end": 468,
                                  "loc": {
                                    "start": {
                                      "line": 14,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 14,
                                      "column": 38
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Identifier",
                                  "start": 473,
                                  "end": 482,
                                  "loc": {
                                    "start": {
                                      "line": 14,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 14,
                                      "column": 52
                                    },
                                    "identifierName": "undefined"
                                  },
                                  "name": "undefined"
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 496,
                    "end": 674,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 4
                      },
                      "end": {
                        "line": 22,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 496,
                      "end": 504,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 4
                        },
                        "end": {
                          "line": 17,
                          "column": 12
                        },
                        "identifierName": "required"
                      },
                      "name": "required"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 505,
                        "end": 510,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 13
                          },
                          "end": {
                            "line": 17,
                            "column": 18
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 512,
                        "end": 527,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 20
                          },
                          "end": {
                            "line": 17,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 512,
                          "end": 522,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 20
                            },
                            "end": {
                              "line": 17,
                              "column": 30
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 525,
                          "end": 527,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 33
                            },
                            "end": {
                              "line": 17,
                              "column": 35
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 529,
                      "end": 674,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 37
                        },
                        "end": {
                          "line": 22,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 539,
                          "end": 646,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 8
                            },
                            "end": {
                              "line": 20,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 543,
                            "end": 563,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 12
                              },
                              "end": {
                                "line": 18,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 543,
                              "end": 556,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 12
                                },
                                "end": {
                                  "line": 18,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 543,
                                "end": 547,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 548,
                                "end": 556,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 557,
                                "end": 562,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 565,
                            "end": 646,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 34
                              },
                              "end": {
                                "line": 20,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 579,
                                "end": 636,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 69
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 585,
                                  "end": 635,
                                  "loc": {
                                    "start": {
                                      "line": 19,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 19,
                                      "column": 68
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 589,
                                    "end": 594,
                                    "loc": {
                                      "start": {
                                        "line": 19,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 19,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 595,
                                      "end": 634,
                                      "loc": {
                                        "start": {
                                          "line": 19,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 19,
                                          "column": 67
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 613,
                                          "end": 623,
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 56
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 627,
                                          "end": 632,
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 65
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 596,
                                          "end": 611,
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 44
                                            }
                                          },
                                          "value": {
                                            "raw": "value required ",
                                            "cooked": "value required "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 624,
                                          "end": 625,
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 58
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 633,
                                          "end": 633,
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 66
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 655,
                          "end": 668,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 8
                            },
                            "end": {
                              "line": 21,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 662,
                            "end": 667,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 15
                              },
                              "end": {
                                "line": 21,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 681,
                    "end": 867,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 4
                      },
                      "end": {
                        "line": 29,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 681,
                      "end": 693,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 4
                        },
                        "end": {
                          "line": 24,
                          "column": 16
                        },
                        "identifierName": "require_long"
                      },
                      "name": "require_long"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 694,
                        "end": 699,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 17
                          },
                          "end": {
                            "line": 24,
                            "column": 22
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 701,
                        "end": 716,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 24
                          },
                          "end": {
                            "line": 24,
                            "column": 39
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 701,
                          "end": 711,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 34
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 714,
                          "end": 716,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 37
                            },
                            "end": {
                              "line": 24,
                              "column": 39
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 718,
                      "end": 867,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 41
                        },
                        "end": {
                          "line": 29,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 728,
                          "end": 839,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 8
                            },
                            "end": {
                              "line": 27,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 732,
                            "end": 751,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 12
                              },
                              "end": {
                                "line": 25,
                                "column": 31
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 733,
                              "end": 751,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 13
                                },
                                "end": {
                                  "line": 25,
                                  "column": 31
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 733,
                                "end": 744,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 24
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 733,
                                  "end": 737,
                                  "loc": {
                                    "start": {
                                      "line": 25,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 25,
                                      "column": 17
                                    },
                                    "identifierName": "Long"
                                  },
                                  "name": "Long"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 738,
                                  "end": 744,
                                  "loc": {
                                    "start": {
                                      "line": 25,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 25,
                                      "column": 24
                                    },
                                    "identifierName": "isLong"
                                  },
                                  "name": "isLong"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 745,
                                  "end": 750,
                                  "loc": {
                                    "start": {
                                      "line": 25,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 25,
                                      "column": 30
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 753,
                            "end": 839,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 33
                              },
                              "end": {
                                "line": 27,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 767,
                                "end": 829,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 74
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 773,
                                  "end": 828,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 73
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 777,
                                    "end": 782,
                                    "loc": {
                                      "start": {
                                        "line": 26,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 26,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 783,
                                      "end": 827,
                                      "loc": {
                                        "start": {
                                          "line": 26,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 26,
                                          "column": 72
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 806,
                                          "end": 816,
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 61
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 820,
                                          "end": 825,
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 70
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 784,
                                          "end": 804,
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 49
                                            }
                                          },
                                          "value": {
                                            "raw": "Long value required ",
                                            "cooked": "Long value required "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 817,
                                          "end": 818,
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 63
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 826,
                                          "end": 826,
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 71
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 71
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 848,
                          "end": 861,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 855,
                            "end": 860,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 15
                              },
                              "end": {
                                "line": 28,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 874,
                    "end": 1098,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 4
                      },
                      "end": {
                        "line": 39,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 874,
                      "end": 880,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 4
                        },
                        "end": {
                          "line": 31,
                          "column": 10
                        },
                        "identifierName": "string"
                      },
                      "name": "string"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 881,
                        "end": 886,
                        "loc": {
                          "start": {
                            "line": 31,
                            "column": 11
                          },
                          "end": {
                            "line": 31,
                            "column": 16
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 888,
                      "end": 1098,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 18
                        },
                        "end": {
                          "line": 39,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 898,
                          "end": 961,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 8
                            },
                            "end": {
                              "line": 34,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 902,
                            "end": 922,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 12
                              },
                              "end": {
                                "line": 32,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 902,
                              "end": 915,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 12
                                },
                                "end": {
                                  "line": 32,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 902,
                                "end": 906,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 907,
                                "end": 915,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 916,
                                "end": 921,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 924,
                            "end": 961,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 34
                              },
                              "end": {
                                "line": 34,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 938,
                                "end": 951,
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 945,
                                  "end": 950,
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 970,
                          "end": 1070,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 8
                            },
                            "end": {
                              "line": 37,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 974,
                            "end": 999,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 12
                              },
                              "end": {
                                "line": 35,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 974,
                              "end": 986,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 12
                                },
                                "end": {
                                  "line": 35,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 981,
                                "end": 986,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "!==",
                            "right": {
                              "type": "StringLiteral",
                              "start": 991,
                              "end": 999,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 29
                                },
                                "end": {
                                  "line": 35,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "string",
                                "raw": "\"string\""
                              },
                              "value": "string"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1001,
                            "end": 1070,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 39
                              },
                              "end": {
                                "line": 37,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 1015,
                                "end": 1060,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 57
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 1021,
                                  "end": 1059,
                                  "loc": {
                                    "start": {
                                      "line": 36,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 36,
                                      "column": 56
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 1025,
                                    "end": 1030,
                                    "loc": {
                                      "start": {
                                        "line": 36,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 36,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 1031,
                                      "end": 1058,
                                      "loc": {
                                        "start": {
                                          "line": 36,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 36,
                                          "column": 55
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 1051,
                                          "end": 1056,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 48
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 53
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 1032,
                                          "end": 1049,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 46
                                            }
                                          },
                                          "value": {
                                            "raw": "string required: ",
                                            "cooked": "string required: "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1057,
                                          "end": 1057,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 54
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1079,
                          "end": 1092,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 8
                            },
                            "end": {
                              "line": 38,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 1086,
                            "end": 1091,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 15
                              },
                              "end": {
                                "line": 38,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 1105,
                    "end": 1329,
                    "loc": {
                      "start": {
                        "line": 41,
                        "column": 4
                      },
                      "end": {
                        "line": 49,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 1105,
                      "end": 1111,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 4
                        },
                        "end": {
                          "line": 41,
                          "column": 10
                        },
                        "identifierName": "number"
                      },
                      "name": "number"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 1112,
                        "end": 1117,
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 11
                          },
                          "end": {
                            "line": 41,
                            "column": 16
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 1119,
                      "end": 1329,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 18
                        },
                        "end": {
                          "line": 49,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 1129,
                          "end": 1192,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 8
                            },
                            "end": {
                              "line": 44,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 1133,
                            "end": 1153,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 12
                              },
                              "end": {
                                "line": 42,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1133,
                              "end": 1146,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 12
                                },
                                "end": {
                                  "line": 42,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1133,
                                "end": 1137,
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1138,
                                "end": 1146,
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1147,
                                "end": 1152,
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1155,
                            "end": 1192,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 34
                              },
                              "end": {
                                "line": 44,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 1169,
                                "end": 1182,
                                "loc": {
                                  "start": {
                                    "line": 43,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 43,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 1176,
                                  "end": 1181,
                                  "loc": {
                                    "start": {
                                      "line": 43,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 43,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 1201,
                          "end": 1301,
                          "loc": {
                            "start": {
                              "line": 45,
                              "column": 8
                            },
                            "end": {
                              "line": 47,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 1205,
                            "end": 1230,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 12
                              },
                              "end": {
                                "line": 45,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 1205,
                              "end": 1217,
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 12
                                },
                                "end": {
                                  "line": 45,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 1212,
                                "end": 1217,
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "!==",
                            "right": {
                              "type": "StringLiteral",
                              "start": 1222,
                              "end": 1230,
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 29
                                },
                                "end": {
                                  "line": 45,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "number",
                                "raw": "\"number\""
                              },
                              "value": "number"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1232,
                            "end": 1301,
                            "loc": {
                              "start": {
                                "line": 45,
                                "column": 39
                              },
                              "end": {
                                "line": 47,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 1246,
                                "end": 1291,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 57
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 1252,
                                  "end": 1290,
                                  "loc": {
                                    "start": {
                                      "line": 46,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 46,
                                      "column": 56
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 1256,
                                    "end": 1261,
                                    "loc": {
                                      "start": {
                                        "line": 46,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 46,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 1262,
                                      "end": 1289,
                                      "loc": {
                                        "start": {
                                          "line": 46,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 46,
                                          "column": 55
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 1282,
                                          "end": 1287,
                                          "loc": {
                                            "start": {
                                              "line": 46,
                                              "column": 48
                                            },
                                            "end": {
                                              "line": 46,
                                              "column": 53
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 1263,
                                          "end": 1280,
                                          "loc": {
                                            "start": {
                                              "line": 46,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 46,
                                              "column": 46
                                            }
                                          },
                                          "value": {
                                            "raw": "number required: ",
                                            "cooked": "number required: "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1288,
                                          "end": 1288,
                                          "loc": {
                                            "start": {
                                              "line": 46,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 46,
                                              "column": 54
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1310,
                          "end": 1323,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 8
                            },
                            "end": {
                              "line": 48,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 1317,
                            "end": 1322,
                            "loc": {
                              "start": {
                                "line": 48,
                                "column": 15
                              },
                              "end": {
                                "line": 48,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 1336,
                    "end": 1593,
                    "loc": {
                      "start": {
                        "line": 51,
                        "column": 4
                      },
                      "end": {
                        "line": 59,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 1336,
                      "end": 1348,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 4
                        },
                        "end": {
                          "line": 51,
                          "column": 16
                        },
                        "identifierName": "whole_number"
                      },
                      "name": "whole_number"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 1349,
                        "end": 1354,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 17
                          },
                          "end": {
                            "line": 51,
                            "column": 22
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 1356,
                        "end": 1371,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 24
                          },
                          "end": {
                            "line": 51,
                            "column": 39
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 1356,
                          "end": 1366,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 24
                            },
                            "end": {
                              "line": 51,
                              "column": 34
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 1369,
                          "end": 1371,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 37
                            },
                            "end": {
                              "line": 51,
                              "column": 39
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 1373,
                      "end": 1593,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 41
                        },
                        "end": {
                          "line": 59,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 1383,
                          "end": 1446,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 8
                            },
                            "end": {
                              "line": 54,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 1387,
                            "end": 1407,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 12
                              },
                              "end": {
                                "line": 52,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1387,
                              "end": 1400,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 12
                                },
                                "end": {
                                  "line": 52,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1387,
                                "end": 1391,
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1392,
                                "end": 1400,
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1401,
                                "end": 1406,
                                "loc": {
                                  "start": {
                                    "line": 52,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 52,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1409,
                            "end": 1446,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 34
                              },
                              "end": {
                                "line": 54,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 1423,
                                "end": 1436,
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 1430,
                                  "end": 1435,
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 1455,
                          "end": 1565,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 8
                            },
                            "end": {
                              "line": 57,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 1459,
                            "end": 1475,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 12
                              },
                              "end": {
                                "line": 55,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1459,
                              "end": 1468,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 12
                                },
                                "end": {
                                  "line": 55,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "RegExpLiteral",
                                "start": 1459,
                                "end": 1463,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 16
                                  }
                                },
                                "extra": {
                                  "raw": "/\\./"
                                },
                                "pattern": "\\.",
                                "flags": ""
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1464,
                                "end": 1468,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 21
                                  },
                                  "identifierName": "test"
                                },
                                "name": "test"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1469,
                                "end": 1474,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 27
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1477,
                            "end": 1565,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 30
                              },
                              "end": {
                                "line": 57,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 1491,
                                "end": 1555,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 76
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 1497,
                                  "end": 1554,
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 75
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 1501,
                                    "end": 1506,
                                    "loc": {
                                      "start": {
                                        "line": 56,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 56,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 1507,
                                      "end": 1553,
                                      "loc": {
                                        "start": {
                                          "line": 56,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 56,
                                          "column": 74
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 1532,
                                          "end": 1542,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 63
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 1546,
                                          "end": 1551,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 72
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 1508,
                                          "end": 1530,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 51
                                            }
                                          },
                                          "value": {
                                            "raw": "whole number required ",
                                            "cooked": "whole number required "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1543,
                                          "end": 1544,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 65
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1552,
                                          "end": 1552,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 73
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1574,
                          "end": 1587,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 8
                            },
                            "end": {
                              "line": 58,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 1581,
                            "end": 1586,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 15
                              },
                              "end": {
                                "line": 58,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 1600,
                    "end": 1848,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 4
                      },
                      "end": {
                        "line": 69,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 1600,
                      "end": 1608,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 4
                        },
                        "end": {
                          "line": 61,
                          "column": 12
                        },
                        "identifierName": "unsigned"
                      },
                      "name": "unsigned"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 1609,
                        "end": 1614,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 13
                          },
                          "end": {
                            "line": 61,
                            "column": 18
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 1616,
                        "end": 1631,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 20
                          },
                          "end": {
                            "line": 61,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 1616,
                          "end": 1626,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 20
                            },
                            "end": {
                              "line": 61,
                              "column": 30
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 1629,
                          "end": 1631,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 33
                            },
                            "end": {
                              "line": 61,
                              "column": 35
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 1633,
                      "end": 1848,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 37
                        },
                        "end": {
                          "line": 69,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 1643,
                          "end": 1706,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 8
                            },
                            "end": {
                              "line": 64,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 1647,
                            "end": 1667,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 12
                              },
                              "end": {
                                "line": 62,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1647,
                              "end": 1660,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 12
                                },
                                "end": {
                                  "line": 62,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1647,
                                "end": 1651,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1652,
                                "end": 1660,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1661,
                                "end": 1666,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1669,
                            "end": 1706,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 34
                              },
                              "end": {
                                "line": 64,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 1683,
                                "end": 1696,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 1690,
                                  "end": 1695,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 1715,
                          "end": 1820,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 1719,
                            "end": 1734,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 12
                              },
                              "end": {
                                "line": 65,
                                "column": 27
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1719,
                              "end": 1727,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 12
                                },
                                "end": {
                                  "line": 65,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "RegExpLiteral",
                                "start": 1719,
                                "end": 1722,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 15
                                  }
                                },
                                "extra": {
                                  "raw": "/-/"
                                },
                                "pattern": "-",
                                "flags": ""
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1723,
                                "end": 1727,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 20
                                  },
                                  "identifierName": "test"
                                },
                                "name": "test"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1728,
                                "end": 1733,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 26
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 1736,
                            "end": 1820,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 29
                              },
                              "end": {
                                "line": 67,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 1750,
                                "end": 1810,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 72
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 1756,
                                  "end": 1809,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 71
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 1760,
                                    "end": 1765,
                                    "loc": {
                                      "start": {
                                        "line": 66,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 66,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 1766,
                                      "end": 1808,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 70
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 1787,
                                          "end": 1797,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 59
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 1801,
                                          "end": 1806,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 68
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 1767,
                                          "end": 1785,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 47
                                            }
                                          },
                                          "value": {
                                            "raw": "unsigned required ",
                                            "cooked": "unsigned required "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1798,
                                          "end": 1799,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 61
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 1807,
                                          "end": 1807,
                                          "loc": {
                                            "start": {
                                              "line": 66,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 66,
                                              "column": 69
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1829,
                          "end": 1842,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 8
                            },
                            "end": {
                              "line": 68,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 1836,
                            "end": 1841,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 15
                              },
                              "end": {
                                "line": 68,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 1855,
                    "end": 2005,
                    "loc": {
                      "start": {
                        "line": 71,
                        "column": 4
                      },
                      "end": {
                        "line": 76,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 1855,
                      "end": 1864,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 4
                        },
                        "end": {
                          "line": 71,
                          "column": 13
                        },
                        "identifierName": "is_digits"
                      },
                      "name": "is_digits"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 1866,
                      "end": 2005,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 15
                        },
                        "end": {
                          "line": 76,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 1875,
                          "end": 1880,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 24
                            },
                            "end": {
                              "line": 71,
                              "column": 29
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 1882,
                        "end": 2005,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 31
                          },
                          "end": {
                            "line": 76,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 1892,
                            "end": 1960,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 1896,
                              "end": 1922,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 12
                                },
                                "end": {
                                  "line": 72,
                                  "column": 38
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 1896,
                                "end": 1908,
                                "loc": {
                                  "start": {
                                    "line": 72,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 24
                                  }
                                },
                                "operator": "typeof",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 1903,
                                  "end": 1908,
                                  "loc": {
                                    "start": {
                                      "line": 72,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 72,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "extra": {
                                  "parenthesizedArgument": false
                                }
                              },
                              "operator": "===",
                              "right": {
                                "type": "StringLiteral",
                                "start": 1913,
                                "end": 1922,
                                "loc": {
                                  "start": {
                                    "line": 72,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 38
                                  }
                                },
                                "extra": {
                                  "rawValue": "numeric",
                                  "raw": "\"numeric\""
                                },
                                "value": "numeric"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1924,
                              "end": 1960,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 40
                                },
                                "end": {
                                  "line": 74,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 1938,
                                  "end": 1950,
                                  "loc": {
                                    "start": {
                                      "line": 73,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 24
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 1945,
                                    "end": 1949,
                                    "loc": {
                                      "start": {
                                        "line": 73,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 73,
                                        "column": 23
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 1969,
                            "end": 1999,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 38
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 1976,
                              "end": 1998,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 15
                                },
                                "end": {
                                  "line": 75,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1976,
                                "end": 1991,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "RegExpLiteral",
                                  "start": 1976,
                                  "end": 1986,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 25
                                    }
                                  },
                                  "extra": {
                                    "raw": "/^[0-9]+$/"
                                  },
                                  "pattern": "^[0-9]+$",
                                  "flags": ""
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1987,
                                  "end": 1991,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 30
                                    },
                                    "identifierName": "test"
                                  },
                                  "name": "test"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1992,
                                  "end": 1997,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 36
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 2012,
                    "end": 2405,
                    "loc": {
                      "start": {
                        "line": 78,
                        "column": 4
                      },
                      "end": {
                        "line": 91,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 2012,
                      "end": 2021,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 4
                        },
                        "end": {
                          "line": 78,
                          "column": 13
                        },
                        "identifierName": "to_number"
                      },
                      "name": "to_number"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 2023,
                      "end": 2405,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 15
                        },
                        "end": {
                          "line": 91,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 2032,
                          "end": 2037,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 24
                            },
                            "end": {
                              "line": 78,
                              "column": 29
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "AssignmentPattern",
                          "start": 2039,
                          "end": 2054,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 31
                            },
                            "end": {
                              "line": 78,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 2039,
                            "end": 2049,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 31
                              },
                              "end": {
                                "line": 78,
                                "column": 41
                              },
                              "identifierName": "field_name"
                            },
                            "name": "field_name"
                          },
                          "right": {
                            "type": "StringLiteral",
                            "start": 2052,
                            "end": 2054,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 44
                              },
                              "end": {
                                "line": 78,
                                "column": 46
                              }
                            },
                            "extra": {
                              "rawValue": "",
                              "raw": "\"\""
                            },
                            "value": ""
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 2056,
                        "end": 2405,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 48
                          },
                          "end": {
                            "line": 91,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 2066,
                            "end": 2129,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 2070,
                              "end": 2090,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 12
                                },
                                "end": {
                                  "line": 79,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2070,
                                "end": 2083,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2070,
                                  "end": 2074,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2075,
                                  "end": 2083,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 2084,
                                  "end": 2089,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 2092,
                              "end": 2129,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 34
                                },
                                "end": {
                                  "line": 81,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 2106,
                                  "end": 2119,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 2113,
                                    "end": 2118,
                                    "loc": {
                                      "start": {
                                        "line": 80,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 80,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 2138,
                            "end": 2176,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 8
                              },
                              "end": {
                                "line": 82,
                                "column": 46
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 2138,
                              "end": 2175,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 8
                                },
                                "end": {
                                  "line": 82,
                                  "column": 45
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2138,
                                "end": 2156,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2138,
                                  "end": 2142,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2143,
                                  "end": 2156,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 26
                                    },
                                    "identifierName": "no_overflow53"
                                  },
                                  "name": "no_overflow53"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 2157,
                                  "end": 2162,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 32
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 2164,
                                  "end": 2174,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 44
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 2185,
                            "end": 2373,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 8
                              },
                              "end": {
                                "line": 89,
                                "column": 13
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 2189,
                                "end": 2372,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 12
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 2189,
                                  "end": 2198,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 83,
                                      "column": 21
                                    },
                                    "identifierName": "int_value"
                                  },
                                  "name": "int_value"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 2201,
                                  "end": 2372,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 12
                                    }
                                  },
                                  "callee": {
                                    "type": "ArrowFunctionExpression",
                                    "start": 2202,
                                    "end": 2369,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 9
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": false,
                                    "async": false,
                                    "params": [],
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 2208,
                                      "end": 2369,
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 9
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "IfStatement",
                                          "start": 2222,
                                          "end": 2359,
                                          "loc": {
                                            "start": {
                                              "line": 84,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 13
                                            }
                                          },
                                          "test": {
                                            "type": "BinaryExpression",
                                            "start": 2226,
                                            "end": 2251,
                                            "loc": {
                                              "start": {
                                                "line": 84,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 84,
                                                "column": 41
                                              }
                                            },
                                            "left": {
                                              "type": "UnaryExpression",
                                              "start": 2226,
                                              "end": 2238,
                                              "loc": {
                                                "start": {
                                                  "line": 84,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 84,
                                                  "column": 28
                                                }
                                              },
                                              "operator": "typeof",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 2233,
                                                "end": 2238,
                                                "loc": {
                                                  "start": {
                                                    "line": 84,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 84,
                                                    "column": 28
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              },
                                              "extra": {
                                                "parenthesizedArgument": false
                                              }
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "StringLiteral",
                                              "start": 2243,
                                              "end": 2251,
                                              "loc": {
                                                "start": {
                                                  "line": 84,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 84,
                                                  "column": 41
                                                }
                                              },
                                              "extra": {
                                                "rawValue": "number",
                                                "raw": "\"number\""
                                              },
                                              "value": "number"
                                            }
                                          },
                                          "consequent": {
                                            "type": "BlockStatement",
                                            "start": 2253,
                                            "end": 2298,
                                            "loc": {
                                              "start": {
                                                "line": 84,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 13
                                              }
                                            },
                                            "body": [
                                              {
                                                "type": "ReturnStatement",
                                                "start": 2271,
                                                "end": 2284,
                                                "loc": {
                                                  "start": {
                                                    "line": 85,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 85,
                                                    "column": 29
                                                  }
                                                },
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 2278,
                                                  "end": 2283,
                                                  "loc": {
                                                    "start": {
                                                      "line": 85,
                                                      "column": 23
                                                    },
                                                    "end": {
                                                      "line": 85,
                                                      "column": 28
                                                    },
                                                    "identifierName": "value"
                                                  },
                                                  "name": "value"
                                                }
                                              }
                                            ],
                                            "directives": []
                                          },
                                          "alternate": {
                                            "type": "BlockStatement",
                                            "start": 2304,
                                            "end": 2359,
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 13
                                              }
                                            },
                                            "body": [
                                              {
                                                "type": "ReturnStatement",
                                                "start": 2322,
                                                "end": 2345,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 39
                                                  }
                                                },
                                                "argument": {
                                                  "type": "CallExpression",
                                                  "start": 2329,
                                                  "end": 2344,
                                                  "loc": {
                                                    "start": {
                                                      "line": 87,
                                                      "column": 23
                                                    },
                                                    "end": {
                                                      "line": 87,
                                                      "column": 38
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "Identifier",
                                                    "start": 2329,
                                                    "end": 2337,
                                                    "loc": {
                                                      "start": {
                                                        "line": 87,
                                                        "column": 23
                                                      },
                                                      "end": {
                                                        "line": 87,
                                                        "column": 31
                                                      },
                                                      "identifierName": "parseInt"
                                                    },
                                                    "name": "parseInt"
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 2338,
                                                      "end": 2343,
                                                      "loc": {
                                                        "start": {
                                                          "line": 87,
                                                          "column": 32
                                                        },
                                                        "end": {
                                                          "line": 87,
                                                          "column": 37
                                                        },
                                                        "identifierName": "value"
                                                      },
                                                      "name": "value"
                                                    }
                                                  ]
                                                }
                                              }
                                            ],
                                            "directives": []
                                          }
                                        }
                                      ],
                                      "directives": []
                                    },
                                    "extra": {
                                      "parenthesized": true,
                                      "parenStart": 2201
                                    }
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 2382,
                            "end": 2399,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 8
                              },
                              "end": {
                                "line": 90,
                                "column": 25
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 2389,
                              "end": 2398,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 15
                                },
                                "end": {
                                  "line": 90,
                                  "column": 24
                                },
                                "identifierName": "int_value"
                              },
                              "name": "int_value"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 2412,
                    "end": 2801,
                    "loc": {
                      "start": {
                        "line": 93,
                        "column": 4
                      },
                      "end": {
                        "line": 106,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 2412,
                      "end": 2419,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 4
                        },
                        "end": {
                          "line": 93,
                          "column": 11
                        },
                        "identifierName": "to_long"
                      },
                      "name": "to_long"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 2420,
                        "end": 2425,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 12
                          },
                          "end": {
                            "line": 93,
                            "column": 17
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 2427,
                        "end": 2442,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 19
                          },
                          "end": {
                            "line": 93,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2427,
                          "end": 2437,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 19
                            },
                            "end": {
                              "line": 93,
                              "column": 29
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 2440,
                          "end": 2442,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 32
                            },
                            "end": {
                              "line": 93,
                              "column": 34
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 2444,
                        "end": 2460,
                        "loc": {
                          "start": {
                            "line": 93,
                            "column": 36
                          },
                          "end": {
                            "line": 93,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2444,
                          "end": 2452,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 36
                            },
                            "end": {
                              "line": 93,
                              "column": 44
                            },
                            "identifierName": "unsigned"
                          },
                          "name": "unsigned"
                        },
                        "right": {
                          "type": "BooleanLiteral",
                          "start": 2455,
                          "end": 2460,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 47
                            },
                            "end": {
                              "line": 93,
                              "column": 52
                            }
                          },
                          "value": false
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 2462,
                      "end": 2801,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 54
                        },
                        "end": {
                          "line": 106,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 2472,
                          "end": 2535,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 96,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 2476,
                            "end": 2496,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 94,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2476,
                              "end": 2489,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 12
                                },
                                "end": {
                                  "line": 94,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2476,
                                "end": 2480,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2481,
                                "end": 2489,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2490,
                                "end": 2495,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2498,
                            "end": 2535,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 34
                              },
                              "end": {
                                "line": 96,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 2512,
                                "end": 2525,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 2519,
                                  "end": 2524,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 2544,
                          "end": 2605,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 8
                            },
                            "end": {
                              "line": 99,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 2548,
                            "end": 2566,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 12
                              },
                              "end": {
                                "line": 97,
                                "column": 30
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2548,
                              "end": 2559,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 12
                                },
                                "end": {
                                  "line": 97,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2548,
                                "end": 2552,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 16
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2553,
                                "end": 2559,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 23
                                  },
                                  "identifierName": "isLong"
                                },
                                "name": "isLong"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2560,
                                "end": 2565,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 29
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2568,
                            "end": 2605,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 32
                              },
                              "end": {
                                "line": 99,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 2582,
                                "end": 2595,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 2589,
                                  "end": 2594,
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 98,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 2615,
                          "end": 2663,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 8
                            },
                            "end": {
                              "line": 101,
                              "column": 56
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 2615,
                            "end": 2662,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 8
                              },
                              "end": {
                                "line": 101,
                                "column": 55
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2615,
                              "end": 2633,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 8
                                },
                                "end": {
                                  "line": 101,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2615,
                                "end": 2619,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2620,
                                "end": 2633,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 26
                                  },
                                  "identifierName": "no_overflow64"
                                },
                                "name": "no_overflow64"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2634,
                                "end": 2639,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 32
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 2641,
                                "end": 2651,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 44
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              },
                              {
                                "type": "Identifier",
                                "start": 2653,
                                "end": 2661,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 54
                                  },
                                  "identifierName": "unsigned"
                                },
                                "name": "unsigned"
                              }
                            ]
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 2672,
                          "end": 2746,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 8
                            },
                            "end": {
                              "line": 104,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 2676,
                            "end": 2701,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 12
                              },
                              "end": {
                                "line": 102,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 2676,
                              "end": 2688,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 12
                                },
                                "end": {
                                  "line": 102,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 2683,
                                "end": 2688,
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 2693,
                              "end": 2701,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 29
                                },
                                "end": {
                                  "line": 102,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "number",
                                "raw": "\"number\""
                              },
                              "value": "number"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2703,
                            "end": 2746,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 39
                              },
                              "end": {
                                "line": 104,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 2717,
                                "end": 2736,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 31
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 2717,
                                  "end": 2735,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 30
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 2717,
                                    "end": 2722,
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 17
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 2725,
                                    "end": 2735,
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 30
                                      }
                                    },
                                    "left": {
                                      "type": "StringLiteral",
                                      "start": 2725,
                                      "end": 2727,
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 22
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "",
                                        "raw": "\"\""
                                      },
                                      "value": ""
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 2730,
                                      "end": 2735,
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 30
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    }
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 2755,
                          "end": 2795,
                          "loc": {
                            "start": {
                              "line": 105,
                              "column": 8
                            },
                            "end": {
                              "line": 105,
                              "column": 48
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 2762,
                            "end": 2794,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 15
                              },
                              "end": {
                                "line": 105,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2762,
                              "end": 2777,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 15
                                },
                                "end": {
                                  "line": 105,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 2762,
                                "end": 2766,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 19
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2767,
                                "end": 2777,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 30
                                  },
                                  "identifierName": "fromString"
                                },
                                "name": "fromString"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2778,
                                "end": 2783,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 36
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 2785,
                                "end": 2793,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 46
                                  },
                                  "identifierName": "unsigned"
                                },
                                "name": "unsigned"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 2808,
                    "end": 3288,
                    "loc": {
                      "start": {
                        "line": 108,
                        "column": 4
                      },
                      "end": {
                        "line": 123,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 2808,
                      "end": 2817,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 4
                        },
                        "end": {
                          "line": 108,
                          "column": 13
                        },
                        "identifierName": "to_string"
                      },
                      "name": "to_string"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 2818,
                        "end": 2823,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 14
                          },
                          "end": {
                            "line": 108,
                            "column": 19
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 2825,
                        "end": 2840,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 21
                          },
                          "end": {
                            "line": 108,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2825,
                          "end": 2835,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 21
                            },
                            "end": {
                              "line": 108,
                              "column": 31
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 2838,
                          "end": 2840,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 34
                            },
                            "end": {
                              "line": 108,
                              "column": 36
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 2842,
                      "end": 3288,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 38
                        },
                        "end": {
                          "line": 123,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 2852,
                          "end": 2915,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 8
                            },
                            "end": {
                              "line": 111,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 2856,
                            "end": 2876,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 12
                              },
                              "end": {
                                "line": 109,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2856,
                              "end": 2869,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 12
                                },
                                "end": {
                                  "line": 109,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2856,
                                "end": 2860,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2861,
                                "end": 2869,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2870,
                                "end": 2875,
                                "loc": {
                                  "start": {
                                    "line": 109,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 109,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2878,
                            "end": 2915,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 34
                              },
                              "end": {
                                "line": 111,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 2892,
                                "end": 2905,
                                "loc": {
                                  "start": {
                                    "line": 110,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 2899,
                                  "end": 2904,
                                  "loc": {
                                    "start": {
                                      "line": 110,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 110,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 2924,
                          "end": 2992,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 2928,
                            "end": 2953,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 2928,
                              "end": 2940,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 12
                                },
                                "end": {
                                  "line": 112,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 2935,
                                "end": 2940,
                                "loc": {
                                  "start": {
                                    "line": 112,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 112,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 2945,
                              "end": 2953,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 29
                                },
                                "end": {
                                  "line": 112,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "string",
                                "raw": "\"string\""
                              },
                              "value": "string"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2955,
                            "end": 2992,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 39
                              },
                              "end": {
                                "line": 114,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 2969,
                                "end": 2982,
                                "loc": {
                                  "start": {
                                    "line": 113,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 113,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 2976,
                                  "end": 2981,
                                  "loc": {
                                    "start": {
                                      "line": 113,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 113,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 3001,
                          "end": 3125,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 8
                            },
                            "end": {
                              "line": 118,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 3005,
                            "end": 3030,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 12
                              },
                              "end": {
                                "line": 115,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 3005,
                              "end": 3017,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 12
                                },
                                "end": {
                                  "line": 115,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 3012,
                                "end": 3017,
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 3022,
                              "end": 3030,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 29
                                },
                                "end": {
                                  "line": 115,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "number",
                                "raw": "\"number\""
                              },
                              "value": "number"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3032,
                            "end": 3125,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 39
                              },
                              "end": {
                                "line": 118,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 3046,
                                "end": 3084,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 50
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 3046,
                                  "end": 3083,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 49
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3046,
                                    "end": 3064,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3046,
                                      "end": 3050,
                                      "loc": {
                                        "start": {
                                          "line": 116,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 116,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3051,
                                      "end": 3064,
                                      "loc": {
                                        "start": {
                                          "line": 116,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 116,
                                          "column": 30
                                        },
                                        "identifierName": "no_overflow53"
                                      },
                                      "name": "no_overflow53"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 3065,
                                      "end": 3070,
                                      "loc": {
                                        "start": {
                                          "line": 116,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 116,
                                          "column": 36
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 3072,
                                      "end": 3082,
                                      "loc": {
                                        "start": {
                                          "line": 116,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 116,
                                          "column": 48
                                        },
                                        "identifierName": "field_name"
                                      },
                                      "name": "field_name"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 3097,
                                "end": 3115,
                                "loc": {
                                  "start": {
                                    "line": 117,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 117,
                                    "column": 30
                                  }
                                },
                                "argument": {
                                  "type": "BinaryExpression",
                                  "start": 3104,
                                  "end": 3114,
                                  "loc": {
                                    "start": {
                                      "line": 117,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 117,
                                      "column": 29
                                    }
                                  },
                                  "left": {
                                    "type": "StringLiteral",
                                    "start": 3104,
                                    "end": 3106,
                                    "loc": {
                                      "start": {
                                        "line": 117,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 117,
                                        "column": 21
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "",
                                      "raw": "\"\""
                                    },
                                    "value": ""
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 3109,
                                    "end": 3114,
                                    "loc": {
                                      "start": {
                                        "line": 117,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 117,
                                        "column": 29
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 3134,
                          "end": 3206,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 8
                            },
                            "end": {
                              "line": 121,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 3138,
                            "end": 3156,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 30
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3138,
                              "end": 3149,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 12
                                },
                                "end": {
                                  "line": 119,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3138,
                                "end": 3142,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 16
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3143,
                                "end": 3149,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 23
                                  },
                                  "identifierName": "isLong"
                                },
                                "name": "isLong"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 3150,
                                "end": 3155,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 29
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3158,
                            "end": 3206,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 32
                              },
                              "end": {
                                "line": 121,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 3172,
                                "end": 3196,
                                "loc": {
                                  "start": {
                                    "line": 120,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 36
                                  }
                                },
                                "argument": {
                                  "type": "CallExpression",
                                  "start": 3179,
                                  "end": 3195,
                                  "loc": {
                                    "start": {
                                      "line": 120,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 120,
                                      "column": 35
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3179,
                                    "end": 3193,
                                    "loc": {
                                      "start": {
                                        "line": 120,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 120,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3179,
                                      "end": 3184,
                                      "loc": {
                                        "start": {
                                          "line": 120,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 120,
                                          "column": 24
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3185,
                                      "end": 3193,
                                      "loc": {
                                        "start": {
                                          "line": 120,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 120,
                                          "column": 33
                                        },
                                        "identifierName": "toString"
                                      },
                                      "name": "toString"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ThrowStatement",
                          "start": 3215,
                          "end": 3282,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 8
                            },
                            "end": {
                              "line": 122,
                              "column": 75
                            }
                          },
                          "argument": {
                            "type": "TemplateLiteral",
                            "start": 3221,
                            "end": 3281,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 14
                              },
                              "end": {
                                "line": 122,
                                "column": 74
                              }
                            },
                            "expressions": [
                              {
                                "type": "Identifier",
                                "start": 3241,
                                "end": 3251,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 44
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 3257,
                                "end": 3269,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 62
                                  }
                                },
                                "operator": "typeof",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 3264,
                                  "end": 3269,
                                  "loc": {
                                    "start": {
                                      "line": 122,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 122,
                                      "column": 62
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "extra": {
                                  "parenthesizedArgument": false
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 3274,
                                "end": 3279,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 72
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 3222,
                                "end": 3239,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 32
                                  }
                                },
                                "value": {
                                  "raw": "unsupported type ",
                                  "cooked": "unsupported type "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 3252,
                                "end": 3255,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 48
                                  }
                                },
                                "value": {
                                  "raw": ": (",
                                  "cooked": ": ("
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 3270,
                                "end": 3272,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 65
                                  }
                                },
                                "value": {
                                  "raw": ") ",
                                  "cooked": ") "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 3280,
                                "end": 3280,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 73
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 3295,
                    "end": 3558,
                    "loc": {
                      "start": {
                        "line": 125,
                        "column": 4
                      },
                      "end": {
                        "line": 133,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 3295,
                      "end": 3307,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 4
                        },
                        "end": {
                          "line": 125,
                          "column": 16
                        },
                        "identifierName": "require_test"
                      },
                      "name": "require_test"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 3308,
                        "end": 3313,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 17
                          },
                          "end": {
                            "line": 125,
                            "column": 22
                          },
                          "identifierName": "regex"
                        },
                        "name": "regex"
                      },
                      {
                        "type": "Identifier",
                        "start": 3315,
                        "end": 3320,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 24
                          },
                          "end": {
                            "line": 125,
                            "column": 29
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 3322,
                        "end": 3337,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 31
                          },
                          "end": {
                            "line": 125,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 3322,
                          "end": 3332,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 31
                            },
                            "end": {
                              "line": 125,
                              "column": 41
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 3335,
                          "end": 3337,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 44
                            },
                            "end": {
                              "line": 125,
                              "column": 46
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 3339,
                      "end": 3558,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 48
                        },
                        "end": {
                          "line": 133,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 3349,
                          "end": 3412,
                          "loc": {
                            "start": {
                              "line": 126,
                              "column": 8
                            },
                            "end": {
                              "line": 128,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 3353,
                            "end": 3373,
                            "loc": {
                              "start": {
                                "line": 126,
                                "column": 12
                              },
                              "end": {
                                "line": 126,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3353,
                              "end": 3366,
                              "loc": {
                                "start": {
                                  "line": 126,
                                  "column": 12
                                },
                                "end": {
                                  "line": 126,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3353,
                                "end": 3357,
                                "loc": {
                                  "start": {
                                    "line": 126,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3358,
                                "end": 3366,
                                "loc": {
                                  "start": {
                                    "line": 126,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 3367,
                                "end": 3372,
                                "loc": {
                                  "start": {
                                    "line": 126,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3375,
                            "end": 3412,
                            "loc": {
                              "start": {
                                "line": 126,
                                "column": 34
                              },
                              "end": {
                                "line": 128,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 3389,
                                "end": 3402,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 3396,
                                  "end": 3401,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 3421,
                          "end": 3530,
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 8
                            },
                            "end": {
                              "line": 131,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 3425,
                            "end": 3443,
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 12
                              },
                              "end": {
                                "line": 129,
                                "column": 30
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 3426,
                              "end": 3443,
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 13
                                },
                                "end": {
                                  "line": 129,
                                  "column": 30
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3426,
                                "end": 3436,
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3426,
                                  "end": 3431,
                                  "loc": {
                                    "start": {
                                      "line": 129,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 129,
                                      "column": 18
                                    },
                                    "identifierName": "regex"
                                  },
                                  "name": "regex"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3432,
                                  "end": 3436,
                                  "loc": {
                                    "start": {
                                      "line": 129,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 129,
                                      "column": 23
                                    },
                                    "identifierName": "test"
                                  },
                                  "name": "test"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 3437,
                                  "end": 3442,
                                  "loc": {
                                    "start": {
                                      "line": 129,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 129,
                                      "column": 29
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3445,
                            "end": 3530,
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 32
                              },
                              "end": {
                                "line": 131,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 3459,
                                "end": 3520,
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 73
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 3465,
                                  "end": 3519,
                                  "loc": {
                                    "start": {
                                      "line": 130,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 130,
                                      "column": 72
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 3469,
                                    "end": 3474,
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 3475,
                                      "end": 3518,
                                      "loc": {
                                        "start": {
                                          "line": 130,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 130,
                                          "column": 71
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 3488,
                                          "end": 3493,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 46
                                            },
                                            "identifierName": "regex"
                                          },
                                          "name": "regex"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 3497,
                                          "end": 3507,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 60
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 3511,
                                          "end": 3516,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 69
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 3476,
                                          "end": 3486,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 39
                                            }
                                          },
                                          "value": {
                                            "raw": "unmatched ",
                                            "cooked": "unmatched "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3494,
                                          "end": 3495,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 48
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3508,
                                          "end": 3509,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 62
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 3517,
                                          "end": 3517,
                                          "loc": {
                                            "start": {
                                              "line": 130,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 130,
                                              "column": 70
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 3539,
                          "end": 3552,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 8
                            },
                            "end": {
                              "line": 132,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 3546,
                            "end": 3551,
                            "loc": {
                              "start": {
                                "line": 132,
                                "column": 15
                              },
                              "end": {
                                "line": 132,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 3565,
                    "end": 3875,
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 144,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 3565,
                      "end": 3578,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 4
                        },
                        "end": {
                          "line": 135,
                          "column": 17
                        },
                        "identifierName": "require_match"
                      },
                      "name": "require_match"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 3580,
                      "end": 3875,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 19
                        },
                        "end": {
                          "line": 144,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 3589,
                          "end": 3594,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 28
                            },
                            "end": {
                              "line": 135,
                              "column": 33
                            },
                            "identifierName": "regex"
                          },
                          "name": "regex"
                        },
                        {
                          "type": "Identifier",
                          "start": 3596,
                          "end": 3601,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 35
                            },
                            "end": {
                              "line": 135,
                              "column": 40
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "AssignmentPattern",
                          "start": 3603,
                          "end": 3618,
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 42
                            },
                            "end": {
                              "line": 135,
                              "column": 57
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 3603,
                            "end": 3613,
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 42
                              },
                              "end": {
                                "line": 135,
                                "column": 52
                              },
                              "identifierName": "field_name"
                            },
                            "name": "field_name"
                          },
                          "right": {
                            "type": "StringLiteral",
                            "start": 3616,
                            "end": 3618,
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 55
                              },
                              "end": {
                                "line": 135,
                                "column": 57
                              }
                            },
                            "extra": {
                              "rawValue": "",
                              "raw": "\"\""
                            },
                            "value": ""
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 3620,
                        "end": 3875,
                        "loc": {
                          "start": {
                            "line": 135,
                            "column": 59
                          },
                          "end": {
                            "line": 144,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 3630,
                            "end": 3693,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 8
                              },
                              "end": {
                                "line": 138,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 3634,
                              "end": 3654,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 12
                                },
                                "end": {
                                  "line": 136,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3634,
                                "end": 3647,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3634,
                                  "end": 3638,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3639,
                                  "end": 3647,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 3648,
                                  "end": 3653,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 3656,
                              "end": 3693,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 34
                                },
                                "end": {
                                  "line": 138,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 3670,
                                  "end": 3683,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 3677,
                                    "end": 3682,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 3702,
                            "end": 3733,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 8
                              },
                              "end": {
                                "line": 139,
                                "column": 39
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 3706,
                                "end": 3732,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 38
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 3706,
                                  "end": 3711,
                                  "loc": {
                                    "start": {
                                      "line": 139,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 139,
                                      "column": 17
                                    },
                                    "identifierName": "match"
                                  },
                                  "name": "match"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 3714,
                                  "end": 3732,
                                  "loc": {
                                    "start": {
                                      "line": 139,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 139,
                                      "column": 38
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3714,
                                    "end": 3725,
                                    "loc": {
                                      "start": {
                                        "line": 139,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 139,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 3714,
                                      "end": 3719,
                                      "loc": {
                                        "start": {
                                          "line": 139,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 139,
                                          "column": 25
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3720,
                                      "end": 3725,
                                      "loc": {
                                        "start": {
                                          "line": 139,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 139,
                                          "column": 31
                                        },
                                        "identifierName": "match"
                                      },
                                      "name": "match"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 3726,
                                      "end": 3731,
                                      "loc": {
                                        "start": {
                                          "line": 139,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 139,
                                          "column": 37
                                        },
                                        "identifierName": "regex"
                                      },
                                      "name": "regex"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 3742,
                            "end": 3847,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 8
                              },
                              "end": {
                                "line": 142,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 3746,
                              "end": 3760,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 12
                                },
                                "end": {
                                  "line": 140,
                                  "column": 26
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 3746,
                                "end": 3751,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 17
                                  },
                                  "identifierName": "match"
                                },
                                "name": "match"
                              },
                              "operator": "===",
                              "right": {
                                "type": "NullLiteral",
                                "start": 3756,
                                "end": 3760,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 26
                                  }
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 3762,
                              "end": 3847,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 28
                                },
                                "end": {
                                  "line": 142,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ThrowStatement",
                                  "start": 3776,
                                  "end": 3837,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 73
                                    }
                                  },
                                  "argument": {
                                    "type": "NewExpression",
                                    "start": 3782,
                                    "end": 3836,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 3786,
                                      "end": 3791,
                                      "loc": {
                                        "start": {
                                          "line": 141,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 141,
                                          "column": 27
                                        },
                                        "identifierName": "Error"
                                      },
                                      "name": "Error"
                                    },
                                    "arguments": [
                                      {
                                        "type": "TemplateLiteral",
                                        "start": 3792,
                                        "end": 3835,
                                        "loc": {
                                          "start": {
                                            "line": 141,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 141,
                                            "column": 71
                                          }
                                        },
                                        "expressions": [
                                          {
                                            "type": "Identifier",
                                            "start": 3805,
                                            "end": 3810,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 46
                                              },
                                              "identifierName": "regex"
                                            },
                                            "name": "regex"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 3814,
                                            "end": 3824,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 60
                                              },
                                              "identifierName": "field_name"
                                            },
                                            "name": "field_name"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 3828,
                                            "end": 3833,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 69
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          }
                                        ],
                                        "quasis": [
                                          {
                                            "type": "TemplateElement",
                                            "start": 3793,
                                            "end": 3803,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 39
                                              }
                                            },
                                            "value": {
                                              "raw": "unmatched ",
                                              "cooked": "unmatched "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 3811,
                                            "end": 3812,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 48
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 3825,
                                            "end": 3826,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 62
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 3834,
                                            "end": 3834,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 70
                                              }
                                            },
                                            "value": {
                                              "raw": "",
                                              "cooked": ""
                                            },
                                            "tail": true
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 3856,
                            "end": 3869,
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 8
                              },
                              "end": {
                                "line": 143,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 3863,
                              "end": 3868,
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 15
                                },
                                "end": {
                                  "line": 143,
                                  "column": 20
                                },
                                "identifierName": "match"
                              },
                              "name": "match"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 3882,
                    "end": 4065,
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 4
                      },
                      "end": {
                        "line": 152,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 3882,
                      "end": 3899,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 4
                        },
                        "end": {
                          "line": 146,
                          "column": 21
                        },
                        "identifierName": "require_object_id"
                      },
                      "name": "require_object_id"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 3901,
                      "end": 4065,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 23
                        },
                        "end": {
                          "line": 152,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 3910,
                          "end": 3915,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 32
                            },
                            "end": {
                              "line": 146,
                              "column": 37
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 3917,
                          "end": 3927,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 39
                            },
                            "end": {
                              "line": 146,
                              "column": 49
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 3929,
                        "end": 4065,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 51
                          },
                          "end": {
                            "line": 152,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 3939,
                            "end": 4059,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 8
                              },
                              "end": {
                                "line": 151,
                                "column": 10
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 3946,
                              "end": 4058,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 15
                                },
                                "end": {
                                  "line": 151,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 3946,
                                "end": 3959,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 28
                                  },
                                  "identifierName": "require_match"
                                },
                                "name": "require_match"
                              },
                              "arguments": [
                                {
                                  "type": "RegExpLiteral",
                                  "start": 3973,
                                  "end": 4005,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 44
                                    }
                                  },
                                  "extra": {
                                    "raw": "/^([0-9]+)\\.([0-9]+)\\.([0-9]+)$/"
                                  },
                                  "pattern": "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$",
                                  "flags": ""
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4019,
                                  "end": 4024,
                                  "loc": {
                                    "start": {
                                      "line": 149,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 149,
                                      "column": 17
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4038,
                                  "end": 4048,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 22
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 4109,
                    "end": 4431,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 4
                      },
                      "end": {
                        "line": 164,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 4109,
                      "end": 4122,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 4
                        },
                        "end": {
                          "line": 155,
                          "column": 17
                        },
                        "identifierName": "require_range"
                      },
                      "name": "require_range",
                      "leadingComments": null
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 4123,
                        "end": 4126,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 18
                          },
                          "end": {
                            "line": 155,
                            "column": 21
                          },
                          "identifierName": "min"
                        },
                        "name": "min"
                      },
                      {
                        "type": "Identifier",
                        "start": 4128,
                        "end": 4131,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 23
                          },
                          "end": {
                            "line": 155,
                            "column": 26
                          },
                          "identifierName": "max"
                        },
                        "name": "max"
                      },
                      {
                        "type": "Identifier",
                        "start": 4133,
                        "end": 4138,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 28
                          },
                          "end": {
                            "line": 155,
                            "column": 33
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 4140,
                        "end": 4155,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 35
                          },
                          "end": {
                            "line": 155,
                            "column": 50
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 4140,
                          "end": 4150,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 35
                            },
                            "end": {
                              "line": 155,
                              "column": 45
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 4153,
                          "end": 4155,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 48
                            },
                            "end": {
                              "line": 155,
                              "column": 50
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 4157,
                      "end": 4431,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 52
                        },
                        "end": {
                          "line": 164,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 4167,
                          "end": 4230,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 8
                            },
                            "end": {
                              "line": 158,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 4171,
                            "end": 4191,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 12
                              },
                              "end": {
                                "line": 156,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4171,
                              "end": 4184,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 12
                                },
                                "end": {
                                  "line": 156,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4171,
                                "end": 4175,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4176,
                                "end": 4184,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 4185,
                                "end": 4190,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4193,
                            "end": 4230,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 34
                              },
                              "end": {
                                "line": 158,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 4207,
                                "end": 4220,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 4214,
                                  "end": 4219,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 4239,
                          "end": 4274,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 8
                            },
                            "end": {
                              "line": 159,
                              "column": 43
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 4243,
                              "end": 4273,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 12
                                },
                                "end": {
                                  "line": 159,
                                  "column": 42
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 4243,
                                "end": 4249,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 18
                                  },
                                  "identifierName": "number"
                                },
                                "name": "number"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 4252,
                                "end": 4273,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 42
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4252,
                                  "end": 4266,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4252,
                                    "end": 4256,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4257,
                                    "end": 4266,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 35
                                      },
                                      "identifierName": "to_number"
                                    },
                                    "name": "to_number"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 4267,
                                    "end": 4272,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 41
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "IfStatement",
                          "start": 4283,
                          "end": 4403,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 4287,
                            "end": 4313,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 12
                              },
                              "end": {
                                "line": 160,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 4287,
                              "end": 4298,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 12
                                },
                                "end": {
                                  "line": 160,
                                  "column": 23
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4287,
                                "end": 4292,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 17
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "operator": "<",
                              "right": {
                                "type": "Identifier",
                                "start": 4295,
                                "end": 4298,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 23
                                  },
                                  "identifierName": "min"
                                },
                                "name": "min"
                              }
                            },
                            "operator": "||",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 4302,
                              "end": 4313,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 27
                                },
                                "end": {
                                  "line": 160,
                                  "column": 38
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4302,
                                "end": 4307,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 32
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "operator": ">",
                              "right": {
                                "type": "Identifier",
                                "start": 4310,
                                "end": 4313,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 38
                                  },
                                  "identifierName": "max"
                                },
                                "name": "max"
                              }
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4315,
                            "end": 4403,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 40
                              },
                              "end": {
                                "line": 162,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ThrowStatement",
                                "start": 4329,
                                "end": 4393,
                                "loc": {
                                  "start": {
                                    "line": 161,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 161,
                                    "column": 76
                                  }
                                },
                                "argument": {
                                  "type": "NewExpression",
                                  "start": 4335,
                                  "end": 4392,
                                  "loc": {
                                    "start": {
                                      "line": 161,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 161,
                                      "column": 75
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 4339,
                                    "end": 4344,
                                    "loc": {
                                      "start": {
                                        "line": 161,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 161,
                                        "column": 27
                                      },
                                      "identifierName": "Error"
                                    },
                                    "name": "Error"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 4345,
                                      "end": 4391,
                                      "loc": {
                                        "start": {
                                          "line": 161,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 161,
                                          "column": 74
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 4361,
                                          "end": 4366,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 49
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4370,
                                          "end": 4380,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 63
                                            },
                                            "identifierName": "field_name"
                                          },
                                          "name": "field_name"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4384,
                                          "end": 4389,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 72
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 4346,
                                          "end": 4359,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 42
                                            }
                                          },
                                          "value": {
                                            "raw": "out of range ",
                                            "cooked": "out of range "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4367,
                                          "end": 4368,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 51
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4381,
                                          "end": 4382,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 65
                                            }
                                          },
                                          "value": {
                                            "raw": " ",
                                            "cooked": " "
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4390,
                                          "end": 4390,
                                          "loc": {
                                            "start": {
                                              "line": 161,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 161,
                                              "column": 73
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 4412,
                          "end": 4425,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 8
                            },
                            "end": {
                              "line": 163,
                              "column": 21
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 4419,
                            "end": 4424,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 15
                              },
                              "end": {
                                "line": 163,
                                "column": 20
                              },
                              "identifierName": "value"
                            },
                            "name": "value"
                          }
                        }
                      ],
                      "directives": []
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " Does not support over 53 bits",
                        "start": 4072,
                        "end": 4104,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 4
                          },
                          "end": {
                            "line": 154,
                            "column": 36
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 4438,
                    "end": 5206,
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 4
                      },
                      "end": {
                        "line": 190,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 4438,
                      "end": 4457,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 4
                        },
                        "end": {
                          "line": 166,
                          "column": 23
                        },
                        "identifierName": "require_object_type"
                      },
                      "name": "require_object_type"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 4459,
                      "end": 5206,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 25
                        },
                        "end": {
                          "line": 190,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "AssignmentPattern",
                          "start": 4477,
                          "end": 4496,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 8
                            },
                            "end": {
                              "line": 167,
                              "column": 27
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 4477,
                            "end": 4492,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 8
                              },
                              "end": {
                                "line": 167,
                                "column": 23
                              },
                              "identifierName": "reserved_spaces"
                            },
                            "name": "reserved_spaces"
                          },
                          "right": {
                            "type": "NumericLiteral",
                            "start": 4495,
                            "end": 4496,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 26
                              },
                              "end": {
                                "line": 167,
                                "column": 27
                              }
                            },
                            "extra": {
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "value": 1
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 4506,
                          "end": 4510,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 8
                            },
                            "end": {
                              "line": 168,
                              "column": 12
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 4520,
                          "end": 4525,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 13
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "AssignmentPattern",
                          "start": 4535,
                          "end": 4550,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 23
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 4535,
                            "end": 4545,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 8
                              },
                              "end": {
                                "line": 170,
                                "column": 18
                              },
                              "identifierName": "field_name"
                            },
                            "name": "field_name"
                          },
                          "right": {
                            "type": "StringLiteral",
                            "start": 4548,
                            "end": 4550,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 21
                              },
                              "end": {
                                "line": 170,
                                "column": 23
                              }
                            },
                            "extra": {
                              "rawValue": "",
                              "raw": "\"\""
                            },
                            "value": ""
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 4557,
                        "end": 5206,
                        "loc": {
                          "start": {
                            "line": 171,
                            "column": 6
                          },
                          "end": {
                            "line": 190,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 4567,
                            "end": 4630,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 8
                              },
                              "end": {
                                "line": 174,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 4571,
                              "end": 4591,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 12
                                },
                                "end": {
                                  "line": 172,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4571,
                                "end": 4584,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4571,
                                  "end": 4575,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4576,
                                  "end": 4584,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4585,
                                  "end": 4590,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 4593,
                              "end": 4630,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 34
                                },
                                "end": {
                                  "line": 174,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 4607,
                                  "end": 4620,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 4614,
                                    "end": 4619,
                                    "loc": {
                                      "start": {
                                        "line": 173,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 173,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 4639,
                            "end": 4686,
                            "loc": {
                              "start": {
                                "line": 175,
                                "column": 8
                              },
                              "end": {
                                "line": 175,
                                "column": 55
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 4643,
                                "end": 4685,
                                "loc": {
                                  "start": {
                                    "line": 175,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 54
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 4643,
                                  "end": 4654,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 23
                                    },
                                    "identifierName": "object_type"
                                  },
                                  "name": "object_type"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 4657,
                                  "end": 4685,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 4657,
                                    "end": 4679,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4657,
                                      "end": 4667,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 36
                                        },
                                        "identifierName": "ChainTypes"
                                      },
                                      "name": "ChainTypes"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4668,
                                      "end": 4679,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 48
                                        },
                                        "identifierName": "object_type"
                                      },
                                      "name": "object_type"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4680,
                                    "end": 4684,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 53
                                      },
                                      "identifierName": "type"
                                    },
                                    "name": "type"
                                  },
                                  "computed": true
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 4695,
                            "end": 4837,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 8
                              },
                              "end": {
                                "line": 180,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 4699,
                              "end": 4711,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 12
                                },
                                "end": {
                                  "line": 176,
                                  "column": 24
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 4700,
                                "end": 4711,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 24
                                  },
                                  "identifierName": "object_type"
                                },
                                "name": "object_type"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 4713,
                              "end": 4837,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 26
                                },
                                "end": {
                                  "line": 180,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ThrowStatement",
                                  "start": 4727,
                                  "end": 4827,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 14
                                    }
                                  },
                                  "argument": {
                                    "type": "NewExpression",
                                    "start": 4733,
                                    "end": 4826,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 13
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 4737,
                                      "end": 4742,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 27
                                        },
                                        "identifierName": "Error"
                                      },
                                      "name": "Error"
                                    },
                                    "arguments": [
                                      {
                                        "type": "TemplateLiteral",
                                        "start": 4760,
                                        "end": 4812,
                                        "loc": {
                                          "start": {
                                            "line": 178,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 178,
                                            "column": 68
                                          }
                                        },
                                        "expressions": [
                                          {
                                            "type": "Identifier",
                                            "start": 4783,
                                            "end": 4787,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 43
                                              },
                                              "identifierName": "type"
                                            },
                                            "name": "type"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 4791,
                                            "end": 4801,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 57
                                              },
                                              "identifierName": "field_name"
                                            },
                                            "name": "field_name"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 4805,
                                            "end": 4810,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 66
                                              },
                                              "identifierName": "value"
                                            },
                                            "name": "value"
                                          }
                                        ],
                                        "quasis": [
                                          {
                                            "type": "TemplateElement",
                                            "start": 4761,
                                            "end": 4781,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 37
                                              }
                                            },
                                            "value": {
                                              "raw": "Unknown object type ",
                                              "cooked": "Unknown object type "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 4788,
                                            "end": 4789,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 45
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 4802,
                                            "end": 4803,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 59
                                              }
                                            },
                                            "value": {
                                              "raw": " ",
                                              "cooked": " "
                                            },
                                            "tail": false
                                          },
                                          {
                                            "type": "TemplateElement",
                                            "start": 4811,
                                            "end": 4811,
                                            "loc": {
                                              "start": {
                                                "line": 178,
                                                "column": 67
                                              },
                                              "end": {
                                                "line": 178,
                                                "column": 67
                                              }
                                            },
                                            "value": {
                                              "raw": "",
                                              "cooked": ""
                                            },
                                            "tail": true
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 4846,
                            "end": 4913,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 8
                              },
                              "end": {
                                "line": 181,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 4850,
                                "end": 4912,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 4850,
                                  "end": 4852,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 14
                                    },
                                    "identifierName": "re"
                                  },
                                  "name": "re"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 4855,
                                  "end": 4912,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 74
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 4859,
                                    "end": 4865,
                                    "loc": {
                                      "start": {
                                        "line": 181,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 27
                                      },
                                      "identifierName": "RegExp"
                                    },
                                    "name": "RegExp"
                                  },
                                  "arguments": [
                                    {
                                      "type": "TemplateLiteral",
                                      "start": 4866,
                                      "end": 4911,
                                      "loc": {
                                        "start": {
                                          "line": 181,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 181,
                                          "column": 73
                                        }
                                      },
                                      "expressions": [
                                        {
                                          "type": "Identifier",
                                          "start": 4869,
                                          "end": 4884,
                                          "loc": {
                                            "start": {
                                              "line": 181,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 46
                                            },
                                            "identifierName": "reserved_spaces"
                                          },
                                          "name": "reserved_spaces"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4889,
                                          "end": 4900,
                                          "loc": {
                                            "start": {
                                              "line": 181,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 62
                                            },
                                            "identifierName": "object_type"
                                          },
                                          "name": "object_type"
                                        }
                                      ],
                                      "quasis": [
                                        {
                                          "type": "TemplateElement",
                                          "start": 4867,
                                          "end": 4867,
                                          "loc": {
                                            "start": {
                                              "line": 181,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 29
                                            }
                                          },
                                          "value": {
                                            "raw": "",
                                            "cooked": ""
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4885,
                                          "end": 4887,
                                          "loc": {
                                            "start": {
                                              "line": 181,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 49
                                            }
                                          },
                                          "value": {
                                            "raw": "\\.",
                                            "cooked": "."
                                          },
                                          "tail": false
                                        },
                                        {
                                          "type": "TemplateElement",
                                          "start": 4901,
                                          "end": 4910,
                                          "loc": {
                                            "start": {
                                              "line": 181,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 72
                                            }
                                          },
                                          "value": {
                                            "raw": "\\.[0-9]+$",
                                            "cooked": ".[0-9]+$"
                                          },
                                          "tail": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 4922,
                            "end": 5178,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 8
                              },
                              "end": {
                                "line": 188,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 4926,
                              "end": 4941,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 12
                                },
                                "end": {
                                  "line": 182,
                                  "column": 27
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 4927,
                                "end": 4941,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 27
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4927,
                                  "end": 4934,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4927,
                                    "end": 4929,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 15
                                      },
                                      "identifierName": "re"
                                    },
                                    "name": "re"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4930,
                                    "end": 4934,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 20
                                      },
                                      "identifierName": "test"
                                    },
                                    "name": "test"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 4935,
                                    "end": 4940,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 26
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                ]
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 4943,
                              "end": 5178,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 29
                                },
                                "end": {
                                  "line": 188,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ThrowStatement",
                                  "start": 4957,
                                  "end": 5168,
                                  "loc": {
                                    "start": {
                                      "line": 183,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 14
                                    }
                                  },
                                  "argument": {
                                    "type": "NewExpression",
                                    "start": 4963,
                                    "end": 5167,
                                    "loc": {
                                      "start": {
                                        "line": 183,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 13
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 4967,
                                      "end": 4972,
                                      "loc": {
                                        "start": {
                                          "line": 183,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 183,
                                          "column": 27
                                        },
                                        "identifierName": "Error"
                                      },
                                      "name": "Error"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 4990,
                                        "end": 5153,
                                        "loc": {
                                          "start": {
                                            "line": 184,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 186,
                                            "column": 64
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 4990,
                                          "end": 5086,
                                          "loc": {
                                            "start": {
                                              "line": 184,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 63
                                            }
                                          },
                                          "left": {
                                            "type": "TemplateLiteral",
                                            "start": 4990,
                                            "end": 5020,
                                            "loc": {
                                              "start": {
                                                "line": 184,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 184,
                                                "column": 46
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 5003,
                                                "end": 5007,
                                                "loc": {
                                                  "start": {
                                                    "line": 184,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 184,
                                                    "column": 33
                                                  },
                                                  "identifierName": "type"
                                                },
                                                "name": "type"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 4991,
                                                "end": 5001,
                                                "loc": {
                                                  "start": {
                                                    "line": 184,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 184,
                                                    "column": 27
                                                  }
                                                },
                                                "value": {
                                                  "raw": "Expecting ",
                                                  "cooked": "Expecting "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 5008,
                                                "end": 5019,
                                                "loc": {
                                                  "start": {
                                                    "line": 184,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 184,
                                                    "column": 45
                                                  }
                                                },
                                                "value": {
                                                  "raw": " in format ",
                                                  "cooked": " in format "
                                                },
                                                "tail": true
                                              }
                                            ]
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "TemplateLiteral",
                                            "start": 5043,
                                            "end": 5086,
                                            "loc": {
                                              "start": {
                                                "line": 185,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 185,
                                                "column": 63
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 5046,
                                                "end": 5061,
                                                "loc": {
                                                  "start": {
                                                    "line": 185,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 185,
                                                    "column": 38
                                                  },
                                                  "identifierName": "reserved_spaces"
                                                },
                                                "name": "reserved_spaces"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 5065,
                                                "end": 5076,
                                                "loc": {
                                                  "start": {
                                                    "line": 185,
                                                    "column": 42
                                                  },
                                                  "end": {
                                                    "line": 185,
                                                    "column": 53
                                                  },
                                                  "identifierName": "object_type"
                                                },
                                                "name": "object_type"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 5044,
                                                "end": 5044,
                                                "loc": {
                                                  "start": {
                                                    "line": 185,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 185,
                                                    "column": 21
                                                  }
                                                },
                                                "value": {
                                                  "raw": "",
                                                  "cooked": ""
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 5062,
                                                "end": 5063,
                                                "loc": {
                                                  "start": {
                                                    "line": 185,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 185,
                                                    "column": 40
                                                  }
                                                },
                                                "value": {
                                                  "raw": ".",
                                                  "cooked": "."
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 5077,
                                                "end": 5085,
                                                "loc": {
                                                  "start": {
                                                    "line": 185,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 185,
                                                    "column": 62
                                                  }
                                                },
                                                "value": {
                                                  "raw": ".[0-9]+ ",
                                                  "cooked": ".[0-9]+ "
                                                },
                                                "tail": true
                                              }
                                            ]
                                          }
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "TemplateLiteral",
                                          "start": 5109,
                                          "end": 5153,
                                          "loc": {
                                            "start": {
                                              "line": 186,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 186,
                                              "column": 64
                                            }
                                          },
                                          "expressions": [
                                            {
                                              "type": "Identifier",
                                              "start": 5123,
                                              "end": 5128,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 39
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5132,
                                              "end": 5142,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 53
                                                },
                                                "identifierName": "field_name"
                                              },
                                              "name": "field_name"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5146,
                                              "end": 5151,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 62
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            }
                                          ],
                                          "quasis": [
                                            {
                                              "type": "TemplateElement",
                                              "start": 5110,
                                              "end": 5121,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 32
                                                }
                                              },
                                              "value": {
                                                "raw": "instead of ",
                                                "cooked": "instead of "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5129,
                                              "end": 5130,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 41
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5143,
                                              "end": 5144,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 54
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 55
                                                }
                                              },
                                              "value": {
                                                "raw": " ",
                                                "cooked": " "
                                              },
                                              "tail": false
                                            },
                                            {
                                              "type": "TemplateElement",
                                              "start": 5152,
                                              "end": 5152,
                                              "loc": {
                                                "start": {
                                                  "line": 186,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 186,
                                                  "column": 63
                                                }
                                              },
                                              "value": {
                                                "raw": "",
                                                "cooked": ""
                                              },
                                              "tail": true
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 5187,
                            "end": 5200,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 8
                              },
                              "end": {
                                "line": 189,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 5194,
                              "end": 5199,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 15
                                },
                                "end": {
                                  "line": 189,
                                  "column": 20
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 5213,
                    "end": 5483,
                    "loc": {
                      "start": {
                        "line": 192,
                        "column": 4
                      },
                      "end": {
                        "line": 198,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 5213,
                      "end": 5225,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 4
                        },
                        "end": {
                          "line": 192,
                          "column": 16
                        },
                        "identifierName": "get_instance"
                      },
                      "name": "get_instance"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 5227,
                      "end": 5483,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 18
                        },
                        "end": {
                          "line": 198,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 5236,
                          "end": 5250,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 27
                            },
                            "end": {
                              "line": 192,
                              "column": 41
                            },
                            "identifierName": "reserve_spaces"
                          },
                          "name": "reserve_spaces"
                        },
                        {
                          "type": "Identifier",
                          "start": 5252,
                          "end": 5256,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 43
                            },
                            "end": {
                              "line": 192,
                              "column": 47
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 5258,
                          "end": 5263,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 49
                            },
                            "end": {
                              "line": 192,
                              "column": 54
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 5265,
                          "end": 5275,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 56
                            },
                            "end": {
                              "line": 192,
                              "column": 66
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 5277,
                        "end": 5483,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 68
                          },
                          "end": {
                            "line": 198,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 5287,
                            "end": 5350,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 8
                              },
                              "end": {
                                "line": 195,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 5291,
                              "end": 5311,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 12
                                },
                                "end": {
                                  "line": 193,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5291,
                                "end": 5304,
                                "loc": {
                                  "start": {
                                    "line": 193,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5291,
                                  "end": 5295,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5296,
                                  "end": 5304,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 5305,
                                  "end": 5310,
                                  "loc": {
                                    "start": {
                                      "line": 193,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 5313,
                              "end": 5350,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 34
                                },
                                "end": {
                                  "line": 195,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 5327,
                                  "end": 5340,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 5334,
                                    "end": 5339,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 5359,
                            "end": 5425,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 74
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 5359,
                              "end": 5424,
                              "loc": {
                                "start": {
                                  "line": 196,
                                  "column": 8
                                },
                                "end": {
                                  "line": 196,
                                  "column": 73
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5359,
                                "end": 5383,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5359,
                                  "end": 5363,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5364,
                                  "end": 5383,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 5384,
                                  "end": 5398,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 47
                                    },
                                    "identifierName": "reserve_spaces"
                                  },
                                  "name": "reserve_spaces"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5400,
                                  "end": 5404,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 53
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5406,
                                  "end": 5411,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 60
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5413,
                                  "end": 5423,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 72
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 5434,
                            "end": 5477,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 8
                              },
                              "end": {
                                "line": 197,
                                "column": 51
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 5441,
                              "end": 5476,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 15
                                },
                                "end": {
                                  "line": 197,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5441,
                                "end": 5455,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5441,
                                  "end": 5445,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5446,
                                  "end": 5455,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 29
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 5456,
                                  "end": 5475,
                                  "loc": {
                                    "start": {
                                      "line": 197,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 197,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 5456,
                                    "end": 5472,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5456,
                                      "end": 5467,
                                      "loc": {
                                        "start": {
                                          "line": 197,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 197,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5456,
                                        "end": 5461,
                                        "loc": {
                                          "start": {
                                            "line": 197,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 197,
                                            "column": 35
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5462,
                                        "end": 5467,
                                        "loc": {
                                          "start": {
                                            "line": 197,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 197,
                                            "column": 41
                                          },
                                          "identifierName": "split"
                                        },
                                        "name": "split"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 5468,
                                        "end": 5471,
                                        "loc": {
                                          "start": {
                                            "line": 197,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 197,
                                            "column": 45
                                          }
                                        },
                                        "extra": {
                                          "rawValue": ".",
                                          "raw": "\".\""
                                        },
                                        "value": "."
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "NumericLiteral",
                                    "start": 5473,
                                    "end": 5474,
                                    "loc": {
                                      "start": {
                                        "line": 197,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 197,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  },
                                  "computed": true
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 5490,
                    "end": 5638,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 4
                      },
                      "end": {
                        "line": 203,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 5490,
                      "end": 5511,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 4
                        },
                        "end": {
                          "line": 200,
                          "column": 25
                        },
                        "identifierName": "require_relative_type"
                      },
                      "name": "require_relative_type"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 5513,
                      "end": 5638,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 27
                        },
                        "end": {
                          "line": 203,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 5522,
                          "end": 5526,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 36
                            },
                            "end": {
                              "line": 200,
                              "column": 40
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 5528,
                          "end": 5533,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 42
                            },
                            "end": {
                              "line": 200,
                              "column": 47
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 5535,
                          "end": 5545,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 49
                            },
                            "end": {
                              "line": 200,
                              "column": 59
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 5547,
                        "end": 5638,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 61
                          },
                          "end": {
                            "line": 203,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 5557,
                            "end": 5610,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 8
                              },
                              "end": {
                                "line": 201,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 5557,
                              "end": 5609,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 8
                                },
                                "end": {
                                  "line": 201,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5557,
                                "end": 5581,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5557,
                                  "end": 5561,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5562,
                                  "end": 5581,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 5582,
                                  "end": 5583,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "value": 0
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5585,
                                  "end": 5589,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5591,
                                  "end": 5596,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5598,
                                  "end": 5608,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 5619,
                            "end": 5632,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 8
                              },
                              "end": {
                                "line": 202,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 5626,
                              "end": 5631,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 15
                                },
                                "end": {
                                  "line": 202,
                                  "column": 20
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 5645,
                    "end": 5895,
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 4
                      },
                      "end": {
                        "line": 211,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 5645,
                      "end": 5666,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 4
                        },
                        "end": {
                          "line": 205,
                          "column": 25
                        },
                        "identifierName": "get_relative_instance"
                      },
                      "name": "get_relative_instance"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 5668,
                      "end": 5895,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 27
                        },
                        "end": {
                          "line": 211,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 5677,
                          "end": 5681,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 36
                            },
                            "end": {
                              "line": 205,
                              "column": 40
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 5683,
                          "end": 5688,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 42
                            },
                            "end": {
                              "line": 205,
                              "column": 47
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 5690,
                          "end": 5700,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 49
                            },
                            "end": {
                              "line": 205,
                              "column": 59
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 5702,
                        "end": 5895,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 61
                          },
                          "end": {
                            "line": 211,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 5712,
                            "end": 5775,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 8
                              },
                              "end": {
                                "line": 208,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 5716,
                              "end": 5736,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 12
                                },
                                "end": {
                                  "line": 206,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5716,
                                "end": 5729,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5716,
                                  "end": 5720,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5721,
                                  "end": 5729,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 5730,
                                  "end": 5735,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 5738,
                              "end": 5775,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 34
                                },
                                "end": {
                                  "line": 208,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 5752,
                                  "end": 5765,
                                  "loc": {
                                    "start": {
                                      "line": 207,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 207,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 5759,
                                    "end": 5764,
                                    "loc": {
                                      "start": {
                                        "line": 207,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 207,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 5784,
                            "end": 5837,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 8
                              },
                              "end": {
                                "line": 209,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 5784,
                              "end": 5836,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 8
                                },
                                "end": {
                                  "line": 209,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5784,
                                "end": 5808,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5784,
                                  "end": 5788,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5789,
                                  "end": 5808,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 5809,
                                  "end": 5810,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "value": 0
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5812,
                                  "end": 5816,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5818,
                                  "end": 5823,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5825,
                                  "end": 5835,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 5846,
                            "end": 5889,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 8
                              },
                              "end": {
                                "line": 210,
                                "column": 51
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 5853,
                              "end": 5888,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 15
                                },
                                "end": {
                                  "line": 210,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5853,
                                "end": 5867,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5853,
                                  "end": 5857,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5858,
                                  "end": 5867,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 29
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 5868,
                                  "end": 5887,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 5868,
                                    "end": 5884,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5868,
                                      "end": 5879,
                                      "loc": {
                                        "start": {
                                          "line": 210,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 210,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5868,
                                        "end": 5873,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 35
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5874,
                                        "end": 5879,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 41
                                          },
                                          "identifierName": "split"
                                        },
                                        "name": "split"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 5880,
                                        "end": 5883,
                                        "loc": {
                                          "start": {
                                            "line": 210,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 210,
                                            "column": 45
                                          }
                                        },
                                        "extra": {
                                          "rawValue": ".",
                                          "raw": "\".\""
                                        },
                                        "value": "."
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "NumericLiteral",
                                    "start": 5885,
                                    "end": 5886,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  },
                                  "computed": true
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 5902,
                    "end": 6050,
                    "loc": {
                      "start": {
                        "line": 213,
                        "column": 4
                      },
                      "end": {
                        "line": 216,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 5902,
                      "end": 5923,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 4
                        },
                        "end": {
                          "line": 213,
                          "column": 25
                        },
                        "identifierName": "require_protocol_type"
                      },
                      "name": "require_protocol_type"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 5925,
                      "end": 6050,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 27
                        },
                        "end": {
                          "line": 216,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 5934,
                          "end": 5938,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 36
                            },
                            "end": {
                              "line": 213,
                              "column": 40
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 5940,
                          "end": 5945,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 42
                            },
                            "end": {
                              "line": 213,
                              "column": 47
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 5947,
                          "end": 5957,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 49
                            },
                            "end": {
                              "line": 213,
                              "column": 59
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 5959,
                        "end": 6050,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 61
                          },
                          "end": {
                            "line": 216,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 5969,
                            "end": 6022,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 8
                              },
                              "end": {
                                "line": 214,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 5969,
                              "end": 6021,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 8
                                },
                                "end": {
                                  "line": 214,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5969,
                                "end": 5993,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5969,
                                  "end": 5973,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5974,
                                  "end": 5993,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 5994,
                                  "end": 5995,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "value": 1
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5997,
                                  "end": 6001,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6003,
                                  "end": 6008,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6010,
                                  "end": 6020,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 214,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6031,
                            "end": 6044,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 8
                              },
                              "end": {
                                "line": 215,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 6038,
                              "end": 6043,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 15
                                },
                                "end": {
                                  "line": 215,
                                  "column": 20
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 6057,
                    "end": 6307,
                    "loc": {
                      "start": {
                        "line": 218,
                        "column": 4
                      },
                      "end": {
                        "line": 224,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 6057,
                      "end": 6078,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 4
                        },
                        "end": {
                          "line": 218,
                          "column": 25
                        },
                        "identifierName": "get_protocol_instance"
                      },
                      "name": "get_protocol_instance"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 6080,
                      "end": 6307,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 27
                        },
                        "end": {
                          "line": 224,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 6089,
                          "end": 6093,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 36
                            },
                            "end": {
                              "line": 218,
                              "column": 40
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 6095,
                          "end": 6100,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 42
                            },
                            "end": {
                              "line": 218,
                              "column": 47
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 6102,
                          "end": 6112,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 49
                            },
                            "end": {
                              "line": 218,
                              "column": 59
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 6114,
                        "end": 6307,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 61
                          },
                          "end": {
                            "line": 224,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 6124,
                            "end": 6187,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 8
                              },
                              "end": {
                                "line": 221,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 6128,
                              "end": 6148,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 12
                                },
                                "end": {
                                  "line": 219,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6128,
                                "end": 6141,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6128,
                                  "end": 6132,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6133,
                                  "end": 6141,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6142,
                                  "end": 6147,
                                  "loc": {
                                    "start": {
                                      "line": 219,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 219,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 6150,
                              "end": 6187,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 34
                                },
                                "end": {
                                  "line": 221,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 6164,
                                  "end": 6177,
                                  "loc": {
                                    "start": {
                                      "line": 220,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 220,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 6171,
                                    "end": 6176,
                                    "loc": {
                                      "start": {
                                        "line": 220,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 220,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 6196,
                            "end": 6249,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 8
                              },
                              "end": {
                                "line": 222,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6196,
                              "end": 6248,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 8
                                },
                                "end": {
                                  "line": 222,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6196,
                                "end": 6220,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6196,
                                  "end": 6200,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6201,
                                  "end": 6220,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 6221,
                                  "end": 6222,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "value": 1
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6224,
                                  "end": 6228,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6230,
                                  "end": 6235,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6237,
                                  "end": 6247,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6258,
                            "end": 6301,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 8
                              },
                              "end": {
                                "line": 223,
                                "column": 51
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 6265,
                              "end": 6300,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 15
                                },
                                "end": {
                                  "line": 223,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6265,
                                "end": 6279,
                                "loc": {
                                  "start": {
                                    "line": 223,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 223,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6265,
                                  "end": 6269,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6270,
                                  "end": 6279,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 29
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 6280,
                                  "end": 6299,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 6280,
                                    "end": 6296,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 6280,
                                      "end": 6291,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6280,
                                        "end": 6285,
                                        "loc": {
                                          "start": {
                                            "line": 223,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 223,
                                            "column": 35
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6286,
                                        "end": 6291,
                                        "loc": {
                                          "start": {
                                            "line": 223,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 223,
                                            "column": 41
                                          },
                                          "identifierName": "split"
                                        },
                                        "name": "split"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 6292,
                                        "end": 6295,
                                        "loc": {
                                          "start": {
                                            "line": 223,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 223,
                                            "column": 45
                                          }
                                        },
                                        "extra": {
                                          "rawValue": ".",
                                          "raw": "\".\""
                                        },
                                        "value": "."
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "NumericLiteral",
                                    "start": 6297,
                                    "end": 6298,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  },
                                  "computed": true
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 6314,
                    "end": 6572,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 4
                      },
                      "end": {
                        "line": 233,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 6314,
                      "end": 6331,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 4
                        },
                        "end": {
                          "line": 226,
                          "column": 21
                        },
                        "identifierName": "get_protocol_type"
                      },
                      "name": "get_protocol_type"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 6333,
                      "end": 6572,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 23
                        },
                        "end": {
                          "line": 233,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 6342,
                          "end": 6347,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 32
                            },
                            "end": {
                              "line": 226,
                              "column": 37
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 6349,
                          "end": 6359,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 39
                            },
                            "end": {
                              "line": 226,
                              "column": 49
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 6361,
                        "end": 6572,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 51
                          },
                          "end": {
                            "line": 233,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 6371,
                            "end": 6434,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 8
                              },
                              "end": {
                                "line": 229,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 6375,
                              "end": 6395,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 12
                                },
                                "end": {
                                  "line": 227,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6375,
                                "end": 6388,
                                "loc": {
                                  "start": {
                                    "line": 227,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 227,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6375,
                                  "end": 6379,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6380,
                                  "end": 6388,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6389,
                                  "end": 6394,
                                  "loc": {
                                    "start": {
                                      "line": 227,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 227,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 6397,
                              "end": 6434,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 34
                                },
                                "end": {
                                  "line": 229,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 6411,
                                  "end": 6424,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 6418,
                                    "end": 6423,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 6443,
                            "end": 6485,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 8
                              },
                              "end": {
                                "line": 230,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6443,
                              "end": 6484,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 8
                                },
                                "end": {
                                  "line": 230,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6443,
                                "end": 6465,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6443,
                                  "end": 6447,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6448,
                                  "end": 6465,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 30
                                    },
                                    "identifierName": "require_object_id"
                                  },
                                  "name": "require_object_id"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6466,
                                  "end": 6471,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 36
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6473,
                                  "end": 6483,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 48
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 6494,
                            "end": 6524,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 8
                              },
                              "end": {
                                "line": 231,
                                "column": 38
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 6498,
                                "end": 6523,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 37
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 6498,
                                  "end": 6504,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 18
                                    },
                                    "identifierName": "values"
                                  },
                                  "name": "values"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 6507,
                                  "end": 6523,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 37
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6507,
                                    "end": 6518,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6507,
                                      "end": 6512,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 26
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6513,
                                      "end": 6518,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 32
                                        },
                                        "identifierName": "split"
                                      },
                                      "name": "split"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 6519,
                                      "end": 6522,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 36
                                        }
                                      },
                                      "extra": {
                                        "rawValue": ".",
                                        "raw": "\".\""
                                      },
                                      "value": "."
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6533,
                            "end": 6566,
                            "loc": {
                              "start": {
                                "line": 232,
                                "column": 8
                              },
                              "end": {
                                "line": 232,
                                "column": 41
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 6540,
                              "end": 6565,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 15
                                },
                                "end": {
                                  "line": 232,
                                  "column": 40
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6540,
                                "end": 6554,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 232,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6540,
                                  "end": 6544,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6545,
                                  "end": 6554,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 29
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 6555,
                                  "end": 6564,
                                  "loc": {
                                    "start": {
                                      "line": 232,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 232,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6555,
                                    "end": 6561,
                                    "loc": {
                                      "start": {
                                        "line": 232,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 232,
                                        "column": 36
                                      },
                                      "identifierName": "values"
                                    },
                                    "name": "values"
                                  },
                                  "property": {
                                    "type": "NumericLiteral",
                                    "start": 6562,
                                    "end": 6563,
                                    "loc": {
                                      "start": {
                                        "line": 232,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 232,
                                        "column": 38
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    "value": 1
                                  },
                                  "computed": true
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 6579,
                    "end": 6826,
                    "loc": {
                      "start": {
                        "line": 235,
                        "column": 4
                      },
                      "end": {
                        "line": 241,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 6579,
                      "end": 6601,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 4
                        },
                        "end": {
                          "line": 235,
                          "column": 26
                        },
                        "identifierName": "get_protocol_type_name"
                      },
                      "name": "get_protocol_type_name"
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 6602,
                        "end": 6607,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 27
                          },
                          "end": {
                            "line": 235,
                            "column": 32
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "Identifier",
                        "start": 6609,
                        "end": 6619,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 34
                          },
                          "end": {
                            "line": 235,
                            "column": 44
                          },
                          "identifierName": "field_name"
                        },
                        "name": "field_name"
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 6621,
                      "end": 6826,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 46
                        },
                        "end": {
                          "line": 241,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 6631,
                          "end": 6694,
                          "loc": {
                            "start": {
                              "line": 236,
                              "column": 8
                            },
                            "end": {
                              "line": 238,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 6635,
                            "end": 6655,
                            "loc": {
                              "start": {
                                "line": 236,
                                "column": 12
                              },
                              "end": {
                                "line": 236,
                                "column": 32
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6635,
                              "end": 6648,
                              "loc": {
                                "start": {
                                  "line": 236,
                                  "column": 12
                                },
                                "end": {
                                  "line": 236,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6635,
                                "end": 6639,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6640,
                                "end": 6648,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 25
                                  },
                                  "identifierName": "is_empty"
                                },
                                "name": "is_empty"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6649,
                                "end": 6654,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 31
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 6657,
                            "end": 6694,
                            "loc": {
                              "start": {
                                "line": 236,
                                "column": 34
                              },
                              "end": {
                                "line": 238,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 6671,
                                "end": 6684,
                                "loc": {
                                  "start": {
                                    "line": 237,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 237,
                                    "column": 25
                                  }
                                },
                                "argument": {
                                  "type": "Identifier",
                                  "start": 6678,
                                  "end": 6683,
                                  "loc": {
                                    "start": {
                                      "line": 237,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 237,
                                      "column": 24
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 6703,
                          "end": 6759,
                          "loc": {
                            "start": {
                              "line": 239,
                              "column": 8
                            },
                            "end": {
                              "line": 239,
                              "column": 64
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 6707,
                              "end": 6758,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 12
                                },
                                "end": {
                                  "line": 239,
                                  "column": 63
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 6707,
                                "end": 6714,
                                "loc": {
                                  "start": {
                                    "line": 239,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 239,
                                    "column": 19
                                  },
                                  "identifierName": "type_id"
                                },
                                "name": "type_id"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 6717,
                                "end": 6758,
                                "loc": {
                                  "start": {
                                    "line": 239,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 239,
                                    "column": 63
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6717,
                                  "end": 6739,
                                  "loc": {
                                    "start": {
                                      "line": 239,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 239,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 6717,
                                    "end": 6721,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6722,
                                    "end": 6739,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 44
                                      },
                                      "identifierName": "get_protocol_type"
                                    },
                                    "name": "get_protocol_type"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6740,
                                    "end": 6745,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 50
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 6747,
                                    "end": 6757,
                                    "loc": {
                                      "start": {
                                        "line": 239,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 239,
                                        "column": 62
                                      },
                                      "identifierName": "field_name"
                                    },
                                    "name": "field_name"
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 6768,
                          "end": 6820,
                          "loc": {
                            "start": {
                              "line": 240,
                              "column": 8
                            },
                            "end": {
                              "line": 240,
                              "column": 60
                            }
                          },
                          "argument": {
                            "type": "MemberExpression",
                            "start": 6775,
                            "end": 6819,
                            "loc": {
                              "start": {
                                "line": 240,
                                "column": 15
                              },
                              "end": {
                                "line": 240,
                                "column": 59
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 6775,
                              "end": 6810,
                              "loc": {
                                "start": {
                                  "line": 240,
                                  "column": 15
                                },
                                "end": {
                                  "line": 240,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6775,
                                "end": 6786,
                                "loc": {
                                  "start": {
                                    "line": 240,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 240,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6775,
                                  "end": 6781,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 21
                                    },
                                    "identifierName": "Object"
                                  },
                                  "name": "Object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6782,
                                  "end": 6786,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 26
                                    },
                                    "identifierName": "keys"
                                  },
                                  "name": "keys"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 6787,
                                  "end": 6809,
                                  "loc": {
                                    "start": {
                                      "line": 240,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 240,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6787,
                                    "end": 6797,
                                    "loc": {
                                      "start": {
                                        "line": 240,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 240,
                                        "column": 37
                                      },
                                      "identifierName": "ChainTypes"
                                    },
                                    "name": "ChainTypes"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6798,
                                    "end": 6809,
                                    "loc": {
                                      "start": {
                                        "line": 240,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 240,
                                        "column": 49
                                      },
                                      "identifierName": "object_type"
                                    },
                                    "name": "object_type"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6811,
                              "end": 6818,
                              "loc": {
                                "start": {
                                  "line": 240,
                                  "column": 51
                                },
                                "end": {
                                  "line": 240,
                                  "column": 58
                                },
                                "identifierName": "type_id"
                              },
                              "name": "type_id"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 6833,
                    "end": 6987,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 4
                      },
                      "end": {
                        "line": 246,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 6833,
                      "end": 6860,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 4
                        },
                        "end": {
                          "line": 243,
                          "column": 31
                        },
                        "identifierName": "require_implementation_type"
                      },
                      "name": "require_implementation_type"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 6862,
                      "end": 6987,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 33
                        },
                        "end": {
                          "line": 246,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 6871,
                          "end": 6875,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 42
                            },
                            "end": {
                              "line": 243,
                              "column": 46
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 6877,
                          "end": 6882,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 48
                            },
                            "end": {
                              "line": 243,
                              "column": 53
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 6884,
                          "end": 6894,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 55
                            },
                            "end": {
                              "line": 243,
                              "column": 65
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 6896,
                        "end": 6987,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 67
                          },
                          "end": {
                            "line": 246,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6906,
                            "end": 6959,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 8
                              },
                              "end": {
                                "line": 244,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6906,
                              "end": 6958,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 8
                                },
                                "end": {
                                  "line": 244,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6906,
                                "end": 6930,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6906,
                                  "end": 6910,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6911,
                                  "end": 6930,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 6931,
                                  "end": 6932,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6934,
                                  "end": 6938,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6940,
                                  "end": 6945,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6947,
                                  "end": 6957,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6968,
                            "end": 6981,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 8
                              },
                              "end": {
                                "line": 245,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 6975,
                              "end": 6980,
                              "loc": {
                                "start": {
                                  "line": 245,
                                  "column": 15
                                },
                                "end": {
                                  "line": 245,
                                  "column": 20
                                },
                                "identifierName": "value"
                              },
                              "name": "value"
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectProperty",
                    "start": 6994,
                    "end": 7250,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 4
                      },
                      "end": {
                        "line": 254,
                        "column": 5
                      }
                    },
                    "method": false,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 6994,
                      "end": 7021,
                      "loc": {
                        "start": {
                          "line": 248,
                          "column": 4
                        },
                        "end": {
                          "line": 248,
                          "column": 31
                        },
                        "identifierName": "get_implementation_instance"
                      },
                      "name": "get_implementation_instance"
                    },
                    "value": {
                      "type": "FunctionExpression",
                      "start": 7023,
                      "end": 7250,
                      "loc": {
                        "start": {
                          "line": 248,
                          "column": 33
                        },
                        "end": {
                          "line": 254,
                          "column": 5
                        }
                      },
                      "id": null,
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 7032,
                          "end": 7036,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 42
                            },
                            "end": {
                              "line": 248,
                              "column": 46
                            },
                            "identifierName": "type"
                          },
                          "name": "type"
                        },
                        {
                          "type": "Identifier",
                          "start": 7038,
                          "end": 7043,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 48
                            },
                            "end": {
                              "line": 248,
                              "column": 53
                            },
                            "identifierName": "value"
                          },
                          "name": "value"
                        },
                        {
                          "type": "Identifier",
                          "start": 7045,
                          "end": 7055,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 55
                            },
                            "end": {
                              "line": 248,
                              "column": 65
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 7057,
                        "end": 7250,
                        "loc": {
                          "start": {
                            "line": 248,
                            "column": 67
                          },
                          "end": {
                            "line": 254,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 7067,
                            "end": 7130,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 8
                              },
                              "end": {
                                "line": 251,
                                "column": 9
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 7071,
                              "end": 7091,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 12
                                },
                                "end": {
                                  "line": 249,
                                  "column": 32
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7071,
                                "end": 7084,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7071,
                                  "end": 7075,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7076,
                                  "end": 7084,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 25
                                    },
                                    "identifierName": "is_empty"
                                  },
                                  "name": "is_empty"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 7085,
                                  "end": 7090,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 31
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 7093,
                              "end": 7130,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 34
                                },
                                "end": {
                                  "line": 251,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 7107,
                                  "end": 7120,
                                  "loc": {
                                    "start": {
                                      "line": 250,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 250,
                                      "column": 25
                                    }
                                  },
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 7114,
                                    "end": 7119,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 24
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 7139,
                            "end": 7192,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 8
                              },
                              "end": {
                                "line": 252,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 7139,
                              "end": 7191,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 8
                                },
                                "end": {
                                  "line": 252,
                                  "column": 60
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7139,
                                "end": 7163,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7139,
                                  "end": 7143,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7144,
                                  "end": 7163,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 32
                                    },
                                    "identifierName": "require_object_type"
                                  },
                                  "name": "require_object_type"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 7164,
                                  "end": 7165,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 34
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "value": 2
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7167,
                                  "end": 7171,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 40
                                    },
                                    "identifierName": "type"
                                  },
                                  "name": "type"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7173,
                                  "end": 7178,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 47
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 7180,
                                  "end": 7190,
                                  "loc": {
                                    "start": {
                                      "line": 252,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 252,
                                      "column": 59
                                    },
                                    "identifierName": "field_name"
                                  },
                                  "name": "field_name"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 7201,
                            "end": 7244,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 8
                              },
                              "end": {
                                "line": 253,
                                "column": 51
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 7208,
                              "end": 7243,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 15
                                },
                                "end": {
                                  "line": 253,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7208,
                                "end": 7222,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7208,
                                  "end": 7212,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7213,
                                  "end": 7222,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 29
                                    },
                                    "identifierName": "to_number"
                                  },
                                  "name": "to_number"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7223,
                                  "end": 7242,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 7223,
                                    "end": 7239,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7223,
                                      "end": 7234,
                                      "loc": {
                                        "start": {
                                          "line": 253,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 253,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7223,
                                        "end": 7228,
                                        "loc": {
                                          "start": {
                                            "line": 253,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 253,
                                            "column": 35
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7229,
                                        "end": 7234,
                                        "loc": {
                                          "start": {
                                            "line": 253,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 253,
                                            "column": 41
                                          },
                                          "identifierName": "split"
                                        },
                                        "name": "split"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 7235,
                                        "end": 7238,
                                        "loc": {
                                          "start": {
                                            "line": 253,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 253,
                                            "column": 45
                                          }
                                        },
                                        "extra": {
                                          "rawValue": ".",
                                          "raw": "\".\""
                                        },
                                        "value": "."
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "NumericLiteral",
                                    "start": 7240,
                                    "end": 7241,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  },
                                  "computed": true
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 7290,
                    "end": 8055,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 4
                      },
                      "end": {
                        "line": 277,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 7290,
                      "end": 7303,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 4
                        },
                        "end": {
                          "line": 257,
                          "column": 17
                        },
                        "identifierName": "no_overflow53"
                      },
                      "name": "no_overflow53",
                      "leadingComments": null
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 7304,
                        "end": 7309,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 18
                          },
                          "end": {
                            "line": 257,
                            "column": 23
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 7311,
                        "end": 7326,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 25
                          },
                          "end": {
                            "line": 257,
                            "column": 40
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7311,
                          "end": 7321,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 25
                            },
                            "end": {
                              "line": 257,
                              "column": 35
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 7324,
                          "end": 7326,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 38
                            },
                            "end": {
                              "line": 257,
                              "column": 40
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 7328,
                      "end": 8055,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 42
                        },
                        "end": {
                          "line": 277,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 7338,
                          "end": 7546,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 8
                            },
                            "end": {
                              "line": 263,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 7342,
                            "end": 7367,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 12
                              },
                              "end": {
                                "line": 258,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 7342,
                              "end": 7354,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 12
                                },
                                "end": {
                                  "line": 258,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 7349,
                                "end": 7354,
                                "loc": {
                                  "start": {
                                    "line": 258,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 258,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 7359,
                              "end": 7367,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 29
                                },
                                "end": {
                                  "line": 258,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "number",
                                "raw": "\"number\""
                              },
                              "value": "number"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 7369,
                            "end": 7546,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 39
                              },
                              "end": {
                                "line": 263,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 7383,
                                "end": 7516,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 261,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "LogicalExpression",
                                  "start": 7387,
                                  "end": 7431,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 7387,
                                    "end": 7407,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7387,
                                      "end": 7392,
                                      "loc": {
                                        "start": {
                                          "line": 259,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 259,
                                          "column": 21
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": ">",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 7395,
                                      "end": 7407,
                                      "loc": {
                                        "start": {
                                          "line": 259,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 259,
                                          "column": 36
                                        },
                                        "identifierName": "MAX_SAFE_INT"
                                      },
                                      "name": "MAX_SAFE_INT"
                                    }
                                  },
                                  "operator": "||",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 7411,
                                    "end": 7431,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7411,
                                      "end": 7416,
                                      "loc": {
                                        "start": {
                                          "line": 259,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 259,
                                          "column": 45
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": "<",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 7419,
                                      "end": 7431,
                                      "loc": {
                                        "start": {
                                          "line": 259,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 259,
                                          "column": 60
                                        },
                                        "identifierName": "MIN_SAFE_INT"
                                      },
                                      "name": "MIN_SAFE_INT"
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 7433,
                                  "end": 7516,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 261,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ThrowStatement",
                                      "start": 7451,
                                      "end": 7502,
                                      "loc": {
                                        "start": {
                                          "line": 260,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 260,
                                          "column": 67
                                        }
                                      },
                                      "argument": {
                                        "type": "NewExpression",
                                        "start": 7457,
                                        "end": 7501,
                                        "loc": {
                                          "start": {
                                            "line": 260,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 260,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 7461,
                                          "end": 7466,
                                          "loc": {
                                            "start": {
                                              "line": 260,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 260,
                                              "column": 31
                                            },
                                            "identifierName": "Error"
                                          },
                                          "name": "Error"
                                        },
                                        "arguments": [
                                          {
                                            "type": "TemplateLiteral",
                                            "start": 7467,
                                            "end": 7500,
                                            "loc": {
                                              "start": {
                                                "line": 260,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 260,
                                                "column": 65
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 7479,
                                                "end": 7489,
                                                "loc": {
                                                  "start": {
                                                    "line": 260,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 260,
                                                    "column": 54
                                                  },
                                                  "identifierName": "field_name"
                                                },
                                                "name": "field_name"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 7493,
                                                "end": 7498,
                                                "loc": {
                                                  "start": {
                                                    "line": 260,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 260,
                                                    "column": 63
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 7468,
                                                "end": 7477,
                                                "loc": {
                                                  "start": {
                                                    "line": 260,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 260,
                                                    "column": 42
                                                  }
                                                },
                                                "value": {
                                                  "raw": "overflow ",
                                                  "cooked": "overflow "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 7490,
                                                "end": 7491,
                                                "loc": {
                                                  "start": {
                                                    "line": 260,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 260,
                                                    "column": 56
                                                  }
                                                },
                                                "value": {
                                                  "raw": " ",
                                                  "cooked": " "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 7499,
                                                "end": 7499,
                                                "loc": {
                                                  "start": {
                                                    "line": 260,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 260,
                                                    "column": 64
                                                  }
                                                },
                                                "value": {
                                                  "raw": "",
                                                  "cooked": ""
                                                },
                                                "tail": true
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 7529,
                                "end": 7536,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 7555,
                          "end": 7802,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 8
                            },
                            "end": {
                              "line": 270,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 7559,
                            "end": 7584,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 12
                              },
                              "end": {
                                "line": 264,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 7559,
                              "end": 7571,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 12
                                },
                                "end": {
                                  "line": 264,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 7566,
                                "end": 7571,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 7576,
                              "end": 7584,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 29
                                },
                                "end": {
                                  "line": 264,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "string",
                                "raw": "\"string\""
                              },
                              "value": "string"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 7586,
                            "end": 7802,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 39
                              },
                              "end": {
                                "line": 270,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "start": 7600,
                                "end": 7626,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 38
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 7604,
                                    "end": 7625,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 37
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 7604,
                                      "end": 7607,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 19
                                        },
                                        "identifierName": "int"
                                      },
                                      "name": "int"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 7610,
                                      "end": 7625,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 37
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 7610,
                                        "end": 7618,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 30
                                          },
                                          "identifierName": "parseInt"
                                        },
                                        "name": "parseInt"
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7619,
                                          "end": 7624,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 36
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "kind": "var"
                              },
                              {
                                "type": "IfStatement",
                                "start": 7639,
                                "end": 7772,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 268,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "LogicalExpression",
                                  "start": 7643,
                                  "end": 7687,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 7643,
                                    "end": 7663,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7643,
                                      "end": 7648,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 21
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": ">",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 7651,
                                      "end": 7663,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 36
                                        },
                                        "identifierName": "MAX_SAFE_INT"
                                      },
                                      "name": "MAX_SAFE_INT"
                                    }
                                  },
                                  "operator": "||",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 7667,
                                    "end": 7687,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 7667,
                                      "end": 7672,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 45
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": "<",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 7675,
                                      "end": 7687,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 60
                                        },
                                        "identifierName": "MIN_SAFE_INT"
                                      },
                                      "name": "MIN_SAFE_INT"
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 7689,
                                  "end": 7772,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 268,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ThrowStatement",
                                      "start": 7707,
                                      "end": 7758,
                                      "loc": {
                                        "start": {
                                          "line": 267,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 267,
                                          "column": 67
                                        }
                                      },
                                      "argument": {
                                        "type": "NewExpression",
                                        "start": 7713,
                                        "end": 7757,
                                        "loc": {
                                          "start": {
                                            "line": 267,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 267,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 7717,
                                          "end": 7722,
                                          "loc": {
                                            "start": {
                                              "line": 267,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 267,
                                              "column": 31
                                            },
                                            "identifierName": "Error"
                                          },
                                          "name": "Error"
                                        },
                                        "arguments": [
                                          {
                                            "type": "TemplateLiteral",
                                            "start": 7723,
                                            "end": 7756,
                                            "loc": {
                                              "start": {
                                                "line": 267,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 267,
                                                "column": 65
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 7735,
                                                "end": 7745,
                                                "loc": {
                                                  "start": {
                                                    "line": 267,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 267,
                                                    "column": 54
                                                  },
                                                  "identifierName": "field_name"
                                                },
                                                "name": "field_name"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 7749,
                                                "end": 7754,
                                                "loc": {
                                                  "start": {
                                                    "line": 267,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 267,
                                                    "column": 63
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 7724,
                                                "end": 7733,
                                                "loc": {
                                                  "start": {
                                                    "line": 267,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 267,
                                                    "column": 42
                                                  }
                                                },
                                                "value": {
                                                  "raw": "overflow ",
                                                  "cooked": "overflow "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 7746,
                                                "end": 7747,
                                                "loc": {
                                                  "start": {
                                                    "line": 267,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 267,
                                                    "column": 56
                                                  }
                                                },
                                                "value": {
                                                  "raw": " ",
                                                  "cooked": " "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 7755,
                                                "end": 7755,
                                                "loc": {
                                                  "start": {
                                                    "line": 267,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 267,
                                                    "column": 64
                                                  }
                                                },
                                                "value": {
                                                  "raw": "",
                                                  "cooked": ""
                                                },
                                                "tail": true
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 7785,
                                "end": 7792,
                                "loc": {
                                  "start": {
                                    "line": 269,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 269,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 7811,
                          "end": 7973,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 8
                            },
                            "end": {
                              "line": 275,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 7815,
                            "end": 7833,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 12
                              },
                              "end": {
                                "line": 271,
                                "column": 30
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7815,
                              "end": 7826,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 12
                                },
                                "end": {
                                  "line": 271,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7815,
                                "end": 7819,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 16
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7820,
                                "end": 7826,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 23
                                  },
                                  "identifierName": "isLong"
                                },
                                "name": "isLong"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7827,
                                "end": 7832,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 29
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 7835,
                            "end": 7973,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 32
                              },
                              "end": {
                                "line": 275,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 7897,
                                "end": 7943,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 58
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 7897,
                                  "end": 7942,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 57
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7897,
                                    "end": 7915,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7897,
                                      "end": 7901,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 16
                                        }
                                      },
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7902,
                                      "end": 7915,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 30
                                        },
                                        "identifierName": "no_overflow53"
                                      },
                                      "name": "no_overflow53"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 7916,
                                      "end": 7929,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7916,
                                        "end": 7927,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7916,
                                          "end": 7921,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 36
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7922,
                                          "end": 7927,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 42
                                            },
                                            "identifierName": "toInt"
                                          },
                                          "name": "toInt"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 7931,
                                      "end": 7941,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 56
                                        },
                                        "identifierName": "field_name"
                                      },
                                      "name": "field_name"
                                    }
                                  ],
                                  "leadingComments": null
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " typeof value.toInt() is 'number'",
                                    "start": 7849,
                                    "end": 7884,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 47
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 7956,
                                "end": 7963,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ThrowStatement",
                          "start": 7982,
                          "end": 8049,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 8
                            },
                            "end": {
                              "line": 276,
                              "column": 75
                            }
                          },
                          "argument": {
                            "type": "TemplateLiteral",
                            "start": 7988,
                            "end": 8048,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 14
                              },
                              "end": {
                                "line": 276,
                                "column": 74
                              }
                            },
                            "expressions": [
                              {
                                "type": "Identifier",
                                "start": 8008,
                                "end": 8018,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 44
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 8024,
                                "end": 8036,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 62
                                  }
                                },
                                "operator": "typeof",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 8031,
                                  "end": 8036,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 62
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "extra": {
                                  "parenthesizedArgument": false
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 8041,
                                "end": 8046,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 72
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 7989,
                                "end": 8006,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 32
                                  }
                                },
                                "value": {
                                  "raw": "unsupported type ",
                                  "cooked": "unsupported type "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 8019,
                                "end": 8022,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 48
                                  }
                                },
                                "value": {
                                  "raw": ": (",
                                  "cooked": ": ("
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 8037,
                                "end": 8039,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 65
                                  }
                                },
                                "value": {
                                  "raw": ") ",
                                  "cooked": ") "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 8047,
                                "end": 8047,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 73
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " signed / unsigned decimal",
                        "start": 7257,
                        "end": 7285,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 4
                          },
                          "end": {
                            "line": 256,
                            "column": 32
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ObjectMethod",
                    "start": 8106,
                    "end": 9597,
                    "loc": {
                      "start": {
                        "line": 280,
                        "column": 4
                      },
                      "end": {
                        "line": 320,
                        "column": 5
                      }
                    },
                    "method": true,
                    "shorthand": false,
                    "computed": false,
                    "key": {
                      "type": "Identifier",
                      "start": 8106,
                      "end": 8119,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 4
                        },
                        "end": {
                          "line": 280,
                          "column": 17
                        },
                        "identifierName": "no_overflow64"
                      },
                      "name": "no_overflow64",
                      "leadingComments": null
                    },
                    "kind": "method",
                    "id": null,
                    "generator": false,
                    "expression": false,
                    "async": false,
                    "params": [
                      {
                        "type": "Identifier",
                        "start": 8120,
                        "end": 8125,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 18
                          },
                          "end": {
                            "line": 280,
                            "column": 23
                          },
                          "identifierName": "value"
                        },
                        "name": "value"
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 8127,
                        "end": 8142,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 25
                          },
                          "end": {
                            "line": 280,
                            "column": 40
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8127,
                          "end": 8137,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 25
                            },
                            "end": {
                              "line": 280,
                              "column": 35
                            },
                            "identifierName": "field_name"
                          },
                          "name": "field_name"
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 8140,
                          "end": 8142,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 38
                            },
                            "end": {
                              "line": 280,
                              "column": 40
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "\"\""
                          },
                          "value": ""
                        }
                      },
                      {
                        "type": "AssignmentPattern",
                        "start": 8144,
                        "end": 8160,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 42
                          },
                          "end": {
                            "line": 280,
                            "column": 58
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8144,
                          "end": 8152,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 42
                            },
                            "end": {
                              "line": 280,
                              "column": 50
                            },
                            "identifierName": "unsigned"
                          },
                          "name": "unsigned"
                        },
                        "right": {
                          "type": "BooleanLiteral",
                          "start": 8155,
                          "end": 8160,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 53
                            },
                            "end": {
                              "line": 280,
                              "column": 58
                            }
                          },
                          "value": false
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "start": 8162,
                      "end": 9597,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 60
                        },
                        "end": {
                          "line": 320,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 8228,
                          "end": 8283,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 8
                            },
                            "end": {
                              "line": 284,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 8232,
                            "end": 8250,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 12
                              },
                              "end": {
                                "line": 282,
                                "column": 30
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8232,
                              "end": 8243,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 12
                                },
                                "end": {
                                  "line": 282,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8232,
                                "end": 8236,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 16
                                  },
                                  "identifierName": "Long"
                                },
                                "name": "Long",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8237,
                                "end": 8243,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 23
                                  },
                                  "identifierName": "isLong"
                                },
                                "name": "isLong"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 8244,
                                "end": 8249,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 29
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ],
                            "leadingComments": null
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 8252,
                            "end": 8283,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 32
                              },
                              "end": {
                                "line": 284,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "start": 8266,
                                "end": 8273,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": [],
                            "trailingComments": null
                          },
                          "alternate": null,
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": " https://github.com/dcodeIO/Long.js/issues/20",
                              "start": 8172,
                              "end": 8219,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 8
                                },
                                "end": {
                                  "line": 281,
                                  "column": 55
                                }
                              }
                            }
                          ],
                          "trailingComments": [
                            {
                              "type": "CommentLine",
                              "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
                              "start": 8293,
                              "end": 8366,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 8
                                },
                                "end": {
                                  "line": 286,
                                  "column": 81
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "IfStatement",
                          "start": 8375,
                          "end": 8530,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 8
                            },
                            "end": {
                              "line": 290,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 8379,
                            "end": 8425,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 12
                              },
                              "end": {
                                "line": 287,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 8379,
                              "end": 8400,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 12
                                },
                                "end": {
                                  "line": 287,
                                  "column": 33
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 8379,
                                "end": 8386,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8379,
                                  "end": 8384,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 17
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value",
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8385,
                                  "end": 8386,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 19
                                    },
                                    "identifierName": "t"
                                  },
                                  "name": "t"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "operator": "!==",
                              "right": {
                                "type": "Identifier",
                                "start": 8391,
                                "end": 8400,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 33
                                  },
                                  "identifierName": "undefined"
                                },
                                "name": "undefined"
                              },
                              "leadingComments": null
                            },
                            "operator": "&&",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 8404,
                              "end": 8425,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 37
                                },
                                "end": {
                                  "line": 287,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 8404,
                                "end": 8411,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8404,
                                  "end": 8409,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 42
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8410,
                                  "end": 8411,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 44
                                    },
                                    "identifierName": "s"
                                  },
                                  "name": "s"
                                },
                                "computed": false
                              },
                              "operator": "!==",
                              "right": {
                                "type": "Identifier",
                                "start": 8416,
                                "end": 8425,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 58
                                  },
                                  "identifierName": "undefined"
                                },
                                "name": "undefined"
                              }
                            },
                            "leadingComments": null
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 8427,
                            "end": 8530,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 60
                              },
                              "end": {
                                "line": 290,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 8441,
                                "end": 8500,
                                "loc": {
                                  "start": {
                                    "line": 288,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 288,
                                    "column": 71
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 8441,
                                  "end": 8499,
                                  "loc": {
                                    "start": {
                                      "line": 288,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 288,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8441,
                                    "end": 8459,
                                    "loc": {
                                      "start": {
                                        "line": 288,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 288,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8441,
                                      "end": 8445,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8446,
                                      "end": 8459,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 30
                                        },
                                        "identifierName": "no_overflow64"
                                      },
                                      "name": "no_overflow64"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 8460,
                                      "end": 8476,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 47
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8460,
                                        "end": 8474,
                                        "loc": {
                                          "start": {
                                            "line": 288,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 288,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8460,
                                          "end": 8465,
                                          "loc": {
                                            "start": {
                                              "line": 288,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 288,
                                              "column": 36
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8466,
                                          "end": 8474,
                                          "loc": {
                                            "start": {
                                              "line": 288,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 288,
                                              "column": 45
                                            },
                                            "identifierName": "toString"
                                          },
                                          "name": "toString"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 8478,
                                      "end": 8488,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 59
                                        },
                                        "identifierName": "field_name"
                                      },
                                      "name": "field_name"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 8490,
                                      "end": 8498,
                                      "loc": {
                                        "start": {
                                          "line": 288,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 288,
                                          "column": 69
                                        },
                                        "identifierName": "unsigned"
                                      },
                                      "name": "unsigned"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 8513,
                                "end": 8520,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null,
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
                              "start": 8293,
                              "end": 8366,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 8
                                },
                                "end": {
                                  "line": 286,
                                  "column": 81
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "IfStatement",
                          "start": 8540,
                          "end": 9297,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 8
                            },
                            "end": {
                              "line": 311,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 8544,
                            "end": 8569,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 8544,
                              "end": 8556,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 12
                                },
                                "end": {
                                  "line": 292,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 8551,
                                "end": 8556,
                                "loc": {
                                  "start": {
                                    "line": 292,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 292,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 8561,
                              "end": 8569,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 29
                                },
                                "end": {
                                  "line": 292,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "string",
                                "raw": "\"string\""
                              },
                              "value": "string"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 8571,
                            "end": 9297,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 39
                              },
                              "end": {
                                "line": 311,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 8650,
                                "end": 8683,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 45
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 8650,
                                  "end": 8682,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 44
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 8650,
                                    "end": 8655,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 17
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value",
                                    "leadingComments": null
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 8658,
                                    "end": 8682,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8658,
                                      "end": 8671,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8658,
                                        "end": 8663,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 25
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8664,
                                        "end": 8671,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 33
                                          },
                                          "identifierName": "replace"
                                        },
                                        "name": "replace"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "RegExpLiteral",
                                        "start": 8672,
                                        "end": 8677,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 39
                                          }
                                        },
                                        "extra": {
                                          "raw": "/^0+/"
                                        },
                                        "pattern": "^0+",
                                        "flags": ""
                                      },
                                      {
                                        "type": "StringLiteral",
                                        "start": 8679,
                                        "end": 8681,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "",
                                          "raw": "\"\""
                                        },
                                        "value": ""
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " remove leading zeros, will cause a false positive",
                                    "start": 8585,
                                    "end": 8637,
                                    "loc": {
                                      "start": {
                                        "line": 293,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 293,
                                        "column": 64
                                      }
                                    }
                                  }
                                ],
                                "trailingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " remove trailing zeros",
                                    "start": 8696,
                                    "end": 8720,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 36
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "WhileStatement",
                                "start": 8733,
                                "end": 8835,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "CallExpression",
                                  "start": 8740,
                                  "end": 8756,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 296,
                                      "column": 35
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8740,
                                    "end": 8749,
                                    "loc": {
                                      "start": {
                                        "line": 296,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 296,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "RegExpLiteral",
                                      "start": 8740,
                                      "end": 8744,
                                      "loc": {
                                        "start": {
                                          "line": 296,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 296,
                                          "column": 23
                                        }
                                      },
                                      "extra": {
                                        "raw": "/0$/"
                                      },
                                      "leadingComments": null,
                                      "pattern": "0$",
                                      "flags": ""
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8745,
                                      "end": 8749,
                                      "loc": {
                                        "start": {
                                          "line": 296,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 296,
                                          "column": 28
                                        },
                                        "identifierName": "test"
                                      },
                                      "name": "test"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 8750,
                                      "end": 8755,
                                      "loc": {
                                        "start": {
                                          "line": 296,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 296,
                                          "column": 34
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    }
                                  ],
                                  "leadingComments": null
                                },
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 8758,
                                  "end": 8835,
                                  "loc": {
                                    "start": {
                                      "line": 296,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 8776,
                                      "end": 8821,
                                      "loc": {
                                        "start": {
                                          "line": 297,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 297,
                                          "column": 61
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 8776,
                                        "end": 8820,
                                        "loc": {
                                          "start": {
                                            "line": 297,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 297,
                                            "column": 60
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "start": 8776,
                                          "end": 8781,
                                          "loc": {
                                            "start": {
                                              "line": 297,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 297,
                                              "column": 21
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 8784,
                                          "end": 8820,
                                          "loc": {
                                            "start": {
                                              "line": 297,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 297,
                                              "column": 60
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 8784,
                                            "end": 8799,
                                            "loc": {
                                              "start": {
                                                "line": 297,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 297,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 8784,
                                              "end": 8789,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 29
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8790,
                                              "end": 8799,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 39
                                                },
                                                "identifierName": "substring"
                                              },
                                              "name": "substring"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NumericLiteral",
                                              "start": 8800,
                                              "end": 8801,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 41
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "value": 0
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 8803,
                                              "end": 8819,
                                              "loc": {
                                                "start": {
                                                  "line": 297,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 297,
                                                  "column": 59
                                                }
                                              },
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 8803,
                                                "end": 8815,
                                                "loc": {
                                                  "start": {
                                                    "line": 297,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 297,
                                                    "column": 55
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8803,
                                                  "end": 8808,
                                                  "loc": {
                                                    "start": {
                                                      "line": 297,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 297,
                                                      "column": 48
                                                    },
                                                    "identifierName": "value"
                                                  },
                                                  "name": "value"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8809,
                                                  "end": 8815,
                                                  "loc": {
                                                    "start": {
                                                      "line": 297,
                                                      "column": 49
                                                    },
                                                    "end": {
                                                      "line": 297,
                                                      "column": 55
                                                    },
                                                    "identifierName": "length"
                                                  },
                                                  "name": "length"
                                                },
                                                "computed": false
                                              },
                                              "operator": "-",
                                              "right": {
                                                "type": "NumericLiteral",
                                                "start": 8818,
                                                "end": 8819,
                                                "loc": {
                                                  "start": {
                                                    "line": 297,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 297,
                                                    "column": 59
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "value": 1
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " remove trailing zeros",
                                    "start": 8696,
                                    "end": 8720,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 36
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "IfStatement",
                                "start": 8848,
                                "end": 8987,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "CallExpression",
                                  "start": 8852,
                                  "end": 8869,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 33
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8852,
                                    "end": 8862,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "RegExpLiteral",
                                      "start": 8852,
                                      "end": 8857,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 21
                                        }
                                      },
                                      "extra": {
                                        "raw": "/\\.$/"
                                      },
                                      "pattern": "\\.$",
                                      "flags": ""
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8858,
                                      "end": 8862,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 26
                                        },
                                        "identifierName": "test"
                                      },
                                      "name": "test"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 8863,
                                      "end": 8868,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 32
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    }
                                  ]
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 8871,
                                  "end": 8987,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 8928,
                                      "end": 8973,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 61
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 8928,
                                        "end": 8972,
                                        "loc": {
                                          "start": {
                                            "line": 301,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 301,
                                            "column": 60
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "start": 8928,
                                          "end": 8933,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 21
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value",
                                          "leadingComments": null
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 8936,
                                          "end": 8972,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 60
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 8936,
                                            "end": 8951,
                                            "loc": {
                                              "start": {
                                                "line": 301,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 301,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 8936,
                                              "end": 8941,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 29
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8942,
                                              "end": 8951,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 39
                                                },
                                                "identifierName": "substring"
                                              },
                                              "name": "substring"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NumericLiteral",
                                              "start": 8952,
                                              "end": 8953,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 41
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "value": 0
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 8955,
                                              "end": 8971,
                                              "loc": {
                                                "start": {
                                                  "line": 301,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 301,
                                                  "column": 59
                                                }
                                              },
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 8955,
                                                "end": 8967,
                                                "loc": {
                                                  "start": {
                                                    "line": 301,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 301,
                                                    "column": 55
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8955,
                                                  "end": 8960,
                                                  "loc": {
                                                    "start": {
                                                      "line": 301,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 301,
                                                      "column": 48
                                                    },
                                                    "identifierName": "value"
                                                  },
                                                  "name": "value"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8961,
                                                  "end": 8967,
                                                  "loc": {
                                                    "start": {
                                                      "line": 301,
                                                      "column": 49
                                                    },
                                                    "end": {
                                                      "line": 301,
                                                      "column": 55
                                                    },
                                                    "identifierName": "length"
                                                  },
                                                  "name": "length"
                                                },
                                                "computed": false
                                              },
                                              "operator": "-",
                                              "right": {
                                                "type": "NumericLiteral",
                                                "start": 8970,
                                                "end": 8971,
                                                "loc": {
                                                  "start": {
                                                    "line": 301,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 301,
                                                    "column": 59
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "value": 1
                                              }
                                            }
                                          ]
                                        },
                                        "leadingComments": null
                                      },
                                      "leadingComments": [
                                        {
                                          "type": "CommentLine",
                                          "value": " remove trailing dot",
                                          "start": 8889,
                                          "end": 8911,
                                          "loc": {
                                            "start": {
                                              "line": 300,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 300,
                                              "column": 38
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "IfStatement",
                                "start": 9000,
                                "end": 9062,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 9004,
                                  "end": 9016,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 28
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9004,
                                    "end": 9009,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 21
                                      },
                                      "identifierName": "value"
                                    },
                                    "name": "value"
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 9014,
                                    "end": 9016,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 28
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "",
                                      "raw": "\"\""
                                    },
                                    "value": ""
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 9018,
                                  "end": 9062,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 9036,
                                      "end": 9048,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 28
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 9036,
                                        "end": 9047,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 27
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "start": 9036,
                                          "end": 9041,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 21
                                            },
                                            "identifierName": "value"
                                          },
                                          "name": "value"
                                        },
                                        "right": {
                                          "type": "StringLiteral",
                                          "start": 9044,
                                          "end": 9047,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 27
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "0",
                                            "raw": "\"0\""
                                          },
                                          "value": "0"
                                        }
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 9075,
                                "end": 9137,
                                "loc": {
                                  "start": {
                                    "line": 306,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 306,
                                    "column": 74
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 9079,
                                    "end": 9136,
                                    "loc": {
                                      "start": {
                                        "line": 306,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 306,
                                        "column": 73
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 9079,
                                      "end": 9090,
                                      "loc": {
                                        "start": {
                                          "line": 306,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 306,
                                          "column": 27
                                        },
                                        "identifierName": "long_string"
                                      },
                                      "name": "long_string"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 9093,
                                      "end": 9136,
                                      "loc": {
                                        "start": {
                                          "line": 306,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 306,
                                          "column": 73
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9093,
                                        "end": 9134,
                                        "loc": {
                                          "start": {
                                            "line": 306,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 306,
                                            "column": 71
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 9093,
                                          "end": 9125,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 62
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 9093,
                                            "end": 9108,
                                            "loc": {
                                              "start": {
                                                "line": 306,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 306,
                                                "column": 45
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 9093,
                                              "end": 9097,
                                              "loc": {
                                                "start": {
                                                  "line": 306,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 306,
                                                  "column": 34
                                                },
                                                "identifierName": "Long"
                                              },
                                              "name": "Long"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9098,
                                              "end": 9108,
                                              "loc": {
                                                "start": {
                                                  "line": 306,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 306,
                                                  "column": 45
                                                },
                                                "identifierName": "fromString"
                                              },
                                              "name": "fromString"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 9109,
                                              "end": 9114,
                                              "loc": {
                                                "start": {
                                                  "line": 306,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 306,
                                                  "column": 51
                                                },
                                                "identifierName": "value"
                                              },
                                              "name": "value"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 9116,
                                              "end": 9124,
                                              "loc": {
                                                "start": {
                                                  "line": 306,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 306,
                                                  "column": 61
                                                },
                                                "identifierName": "unsigned"
                                              },
                                              "name": "unsigned"
                                            }
                                          ]
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9126,
                                          "end": 9134,
                                          "loc": {
                                            "start": {
                                              "line": 306,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 306,
                                              "column": 71
                                            },
                                            "identifierName": "toString"
                                          },
                                          "name": "toString"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    }
                                  }
                                ],
                                "kind": "var"
                              },
                              {
                                "type": "IfStatement",
                                "start": 9150,
                                "end": 9267,
                                "loc": {
                                  "start": {
                                    "line": 307,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 9154,
                                  "end": 9182,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 307,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9154,
                                    "end": 9165,
                                    "loc": {
                                      "start": {
                                        "line": 307,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 307,
                                        "column": 27
                                      },
                                      "identifierName": "long_string"
                                    },
                                    "name": "long_string"
                                  },
                                  "operator": "!==",
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 9170,
                                    "end": 9182,
                                    "loc": {
                                      "start": {
                                        "line": 307,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 307,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9170,
                                      "end": 9180,
                                      "loc": {
                                        "start": {
                                          "line": 307,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 307,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9170,
                                        "end": 9175,
                                        "loc": {
                                          "start": {
                                            "line": 307,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 307,
                                            "column": 37
                                          },
                                          "identifierName": "value"
                                        },
                                        "name": "value"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9176,
                                        "end": 9180,
                                        "loc": {
                                          "start": {
                                            "line": 307,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 307,
                                            "column": 42
                                          },
                                          "identifierName": "trim"
                                        },
                                        "name": "trim"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 9184,
                                  "end": 9267,
                                  "loc": {
                                    "start": {
                                      "line": 307,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ThrowStatement",
                                      "start": 9202,
                                      "end": 9253,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 67
                                        }
                                      },
                                      "argument": {
                                        "type": "NewExpression",
                                        "start": 9208,
                                        "end": 9252,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 9212,
                                          "end": 9217,
                                          "loc": {
                                            "start": {
                                              "line": 308,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 308,
                                              "column": 31
                                            },
                                            "identifierName": "Error"
                                          },
                                          "name": "Error"
                                        },
                                        "arguments": [
                                          {
                                            "type": "TemplateLiteral",
                                            "start": 9218,
                                            "end": 9251,
                                            "loc": {
                                              "start": {
                                                "line": 308,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 308,
                                                "column": 65
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 9230,
                                                "end": 9240,
                                                "loc": {
                                                  "start": {
                                                    "line": 308,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 308,
                                                    "column": 54
                                                  },
                                                  "identifierName": "field_name"
                                                },
                                                "name": "field_name"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 9244,
                                                "end": 9249,
                                                "loc": {
                                                  "start": {
                                                    "line": 308,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 308,
                                                    "column": 63
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 9219,
                                                "end": 9228,
                                                "loc": {
                                                  "start": {
                                                    "line": 308,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 308,
                                                    "column": 42
                                                  }
                                                },
                                                "value": {
                                                  "raw": "overflow ",
                                                  "cooked": "overflow "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 9241,
                                                "end": 9242,
                                                "loc": {
                                                  "start": {
                                                    "line": 308,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 308,
                                                    "column": 56
                                                  }
                                                },
                                                "value": {
                                                  "raw": " ",
                                                  "cooked": " "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 9250,
                                                "end": 9250,
                                                "loc": {
                                                  "start": {
                                                    "line": 308,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 308,
                                                    "column": 64
                                                  }
                                                },
                                                "value": {
                                                  "raw": "",
                                                  "cooked": ""
                                                },
                                                "tail": true
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 9280,
                                "end": 9287,
                                "loc": {
                                  "start": {
                                    "line": 310,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 310,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 9306,
                          "end": 9514,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 317,
                              "column": 9
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 9310,
                            "end": 9335,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 12
                              },
                              "end": {
                                "line": 312,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 9310,
                              "end": 9322,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 12
                                },
                                "end": {
                                  "line": 312,
                                  "column": 24
                                }
                              },
                              "operator": "typeof",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 9317,
                                "end": 9322,
                                "loc": {
                                  "start": {
                                    "line": 312,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 312,
                                    "column": 24
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 9327,
                              "end": 9335,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 29
                                },
                                "end": {
                                  "line": 312,
                                  "column": 37
                                }
                              },
                              "extra": {
                                "rawValue": "number",
                                "raw": "\"number\""
                              },
                              "value": "number"
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 9337,
                            "end": 9514,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 39
                              },
                              "end": {
                                "line": 317,
                                "column": 9
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 9351,
                                "end": 9484,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 315,
                                    "column": 13
                                  }
                                },
                                "test": {
                                  "type": "LogicalExpression",
                                  "start": 9355,
                                  "end": 9399,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 313,
                                      "column": 60
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 9355,
                                    "end": 9375,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 9355,
                                      "end": 9360,
                                      "loc": {
                                        "start": {
                                          "line": 313,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 313,
                                          "column": 21
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": ">",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 9363,
                                      "end": 9375,
                                      "loc": {
                                        "start": {
                                          "line": 313,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 313,
                                          "column": 36
                                        },
                                        "identifierName": "MAX_SAFE_INT"
                                      },
                                      "name": "MAX_SAFE_INT"
                                    }
                                  },
                                  "operator": "||",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 9379,
                                    "end": 9399,
                                    "loc": {
                                      "start": {
                                        "line": 313,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 313,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 9379,
                                      "end": 9384,
                                      "loc": {
                                        "start": {
                                          "line": 313,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 313,
                                          "column": 45
                                        },
                                        "identifierName": "value"
                                      },
                                      "name": "value"
                                    },
                                    "operator": "<",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 9387,
                                      "end": 9399,
                                      "loc": {
                                        "start": {
                                          "line": 313,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 313,
                                          "column": 60
                                        },
                                        "identifierName": "MIN_SAFE_INT"
                                      },
                                      "name": "MIN_SAFE_INT"
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 9401,
                                  "end": 9484,
                                  "loc": {
                                    "start": {
                                      "line": 313,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 315,
                                      "column": 13
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ThrowStatement",
                                      "start": 9419,
                                      "end": 9470,
                                      "loc": {
                                        "start": {
                                          "line": 314,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 314,
                                          "column": 67
                                        }
                                      },
                                      "argument": {
                                        "type": "NewExpression",
                                        "start": 9425,
                                        "end": 9469,
                                        "loc": {
                                          "start": {
                                            "line": 314,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 314,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 9429,
                                          "end": 9434,
                                          "loc": {
                                            "start": {
                                              "line": 314,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 314,
                                              "column": 31
                                            },
                                            "identifierName": "Error"
                                          },
                                          "name": "Error"
                                        },
                                        "arguments": [
                                          {
                                            "type": "TemplateLiteral",
                                            "start": 9435,
                                            "end": 9468,
                                            "loc": {
                                              "start": {
                                                "line": 314,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 314,
                                                "column": 65
                                              }
                                            },
                                            "expressions": [
                                              {
                                                "type": "Identifier",
                                                "start": 9447,
                                                "end": 9457,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 54
                                                  },
                                                  "identifierName": "field_name"
                                                },
                                                "name": "field_name"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 9461,
                                                "end": 9466,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 63
                                                  },
                                                  "identifierName": "value"
                                                },
                                                "name": "value"
                                              }
                                            ],
                                            "quasis": [
                                              {
                                                "type": "TemplateElement",
                                                "start": 9436,
                                                "end": 9445,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 42
                                                  }
                                                },
                                                "value": {
                                                  "raw": "overflow ",
                                                  "cooked": "overflow "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 9458,
                                                "end": 9459,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 56
                                                  }
                                                },
                                                "value": {
                                                  "raw": " ",
                                                  "cooked": " "
                                                },
                                                "tail": false
                                              },
                                              {
                                                "type": "TemplateElement",
                                                "start": 9467,
                                                "end": 9467,
                                                "loc": {
                                                  "start": {
                                                    "line": 314,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 314,
                                                    "column": 64
                                                  }
                                                },
                                                "value": {
                                                  "raw": "",
                                                  "cooked": ""
                                                },
                                                "tail": true
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 9497,
                                "end": 9504,
                                "loc": {
                                  "start": {
                                    "line": 316,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 316,
                                    "column": 19
                                  }
                                },
                                "argument": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ThrowStatement",
                          "start": 9524,
                          "end": 9591,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 75
                            }
                          },
                          "argument": {
                            "type": "TemplateLiteral",
                            "start": 9530,
                            "end": 9590,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 14
                              },
                              "end": {
                                "line": 319,
                                "column": 74
                              }
                            },
                            "expressions": [
                              {
                                "type": "Identifier",
                                "start": 9550,
                                "end": 9560,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 44
                                  },
                                  "identifierName": "field_name"
                                },
                                "name": "field_name"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 9566,
                                "end": 9578,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 62
                                  }
                                },
                                "operator": "typeof",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 9573,
                                  "end": 9578,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 62
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "extra": {
                                  "parenthesizedArgument": false
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 9583,
                                "end": 9588,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 72
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 9531,
                                "end": 9548,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 32
                                  }
                                },
                                "value": {
                                  "raw": "unsupported type ",
                                  "cooked": "unsupported type "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9561,
                                "end": 9564,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 48
                                  }
                                },
                                "value": {
                                  "raw": ": (",
                                  "cooked": ": ("
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9579,
                                "end": 9581,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 65
                                  }
                                },
                                "value": {
                                  "raw": ") ",
                                  "cooked": ") "
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 9589,
                                "end": 9589,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 73
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " signed / unsigned whole numbers only",
                        "start": 8062,
                        "end": 8101,
                        "loc": {
                          "start": {
                            "line": 279,
                            "column": 4
                          },
                          "end": {
                            "line": 279,
                            "column": 43
                          }
                        }
                      }
                    ]
                  }
                ]
              },
              "leadingComments": null
            }
          ],
          "kind": "var",
          "leadingComments": [
            {
              "type": "CommentBlock",
              "value": "*\n    Most validations are skipped and the value returned unchanged when an empty string, null, or undefined is encountered (except \"required\").\n\n    Validations support a string format for dealing with large numbers.\n",
              "start": 163,
              "end": 385,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 0
                },
                "end": {
                  "line": 11,
                  "column": 2
                }
              }
            }
          ],
          "trailingComments": []
        }
      }
    ],
    "directives": []
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": "*\n    Most validations are skipped and the value returned unchanged when an empty string, null, or undefined is encountered (except \"required\").\n\n    Validations support a string format for dealing with large numbers.\n",
      "start": 163,
      "end": 385,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 11,
          "column": 2
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Does not support over 53 bits",
      "start": 4072,
      "end": 4104,
      "loc": {
        "start": {
          "line": 154,
          "column": 4
        },
        "end": {
          "line": 154,
          "column": 36
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " signed / unsigned decimal",
      "start": 7257,
      "end": 7285,
      "loc": {
        "start": {
          "line": 256,
          "column": 4
        },
        "end": {
          "line": 256,
          "column": 32
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " typeof value.toInt() is 'number'",
      "start": 7849,
      "end": 7884,
      "loc": {
        "start": {
          "line": 272,
          "column": 12
        },
        "end": {
          "line": 272,
          "column": 47
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " signed / unsigned whole numbers only",
      "start": 8062,
      "end": 8101,
      "loc": {
        "start": {
          "line": 279,
          "column": 4
        },
        "end": {
          "line": 279,
          "column": 43
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " https://github.com/dcodeIO/Long.js/issues/20",
      "start": 8172,
      "end": 8219,
      "loc": {
        "start": {
          "line": 281,
          "column": 8
        },
        "end": {
          "line": 281,
          "column": 55
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
      "start": 8293,
      "end": 8366,
      "loc": {
        "start": {
          "line": 286,
          "column": 8
        },
        "end": {
          "line": 286,
          "column": 81
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove leading zeros, will cause a false positive",
      "start": 8585,
      "end": 8637,
      "loc": {
        "start": {
          "line": 293,
          "column": 12
        },
        "end": {
          "line": 293,
          "column": 64
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove trailing zeros",
      "start": 8696,
      "end": 8720,
      "loc": {
        "start": {
          "line": 295,
          "column": 12
        },
        "end": {
          "line": 295,
          "column": 36
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove trailing dot",
      "start": 8889,
      "end": 8911,
      "loc": {
        "start": {
          "line": 300,
          "column": 16
        },
        "end": {
          "line": 300,
          "column": 38
        }
      }
    }
  ],
  "tokens": [
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 0,
      "end": 6,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7,
      "end": 8,
      "loc": {
        "start": {
          "line": 1,
          "column": 7
        },
        "end": {
          "line": 1,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 8,
      "end": 12,
      "loc": {
        "start": {
          "line": 1,
          "column": 8
        },
        "end": {
          "line": 1,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12,
      "end": 13,
      "loc": {
        "start": {
          "line": 1,
          "column": 12
        },
        "end": {
          "line": 1,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 14,
      "end": 18,
      "loc": {
        "start": {
          "line": 1,
          "column": 14
        },
        "end": {
          "line": 1,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "bytebuffer",
      "start": 19,
      "end": 31,
      "loc": {
        "start": {
          "line": 1,
          "column": 19
        },
        "end": {
          "line": 1,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 31,
      "end": 32,
      "loc": {
        "start": {
          "line": 1,
          "column": 31
        },
        "end": {
          "line": 1,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 33,
      "end": 39,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ChainTypes",
      "start": 40,
      "end": 50,
      "loc": {
        "start": {
          "line": 2,
          "column": 7
        },
        "end": {
          "line": 2,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 51,
      "end": 55,
      "loc": {
        "start": {
          "line": 2,
          "column": 18
        },
        "end": {
          "line": 2,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../../chain/src/ChainTypes",
      "start": 56,
      "end": 84,
      "loc": {
        "start": {
          "line": 2,
          "column": 23
        },
        "end": {
          "line": 2,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 84,
      "end": 85,
      "loc": {
        "start": {
          "line": 2,
          "column": 51
        },
        "end": {
          "line": 2,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 87,
      "end": 90,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MAX_SAFE_INT",
      "start": 91,
      "end": 103,
      "loc": {
        "start": {
          "line": 4,
          "column": 4
        },
        "end": {
          "line": 4,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 104,
      "end": 105,
      "loc": {
        "start": {
          "line": 4,
          "column": 17
        },
        "end": {
          "line": 4,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 9007199254740991,
      "start": 106,
      "end": 122,
      "loc": {
        "start": {
          "line": 4,
          "column": 19
        },
        "end": {
          "line": 4,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 122,
      "end": 123,
      "loc": {
        "start": {
          "line": 4,
          "column": 35
        },
        "end": {
          "line": 4,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 124,
      "end": 127,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MIN_SAFE_INT",
      "start": 128,
      "end": 140,
      "loc": {
        "start": {
          "line": 5,
          "column": 4
        },
        "end": {
          "line": 5,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 141,
      "end": 142,
      "loc": {
        "start": {
          "line": 5,
          "column": 17
        },
        "end": {
          "line": 5,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 143,
      "end": 144,
      "loc": {
        "start": {
          "line": 5,
          "column": 19
        },
        "end": {
          "line": 5,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 9007199254740991,
      "start": 144,
      "end": 160,
      "loc": {
        "start": {
          "line": 5,
          "column": 20
        },
        "end": {
          "line": 5,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 160,
      "end": 161,
      "loc": {
        "start": {
          "line": 5,
          "column": 36
        },
        "end": {
          "line": 5,
          "column": 37
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n    Most validations are skipped and the value returned unchanged when an empty string, null, or undefined is encountered (except \"required\").\n\n    Validations support a string format for dealing with large numbers.\n",
      "start": 163,
      "end": 385,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 11,
          "column": 2
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 386,
      "end": 389,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_my",
      "start": 390,
      "end": 393,
      "loc": {
        "start": {
          "line": 12,
          "column": 4
        },
        "end": {
          "line": 12,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 394,
      "end": 395,
      "loc": {
        "start": {
          "line": 12,
          "column": 8
        },
        "end": {
          "line": 12,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 396,
      "end": 397,
      "loc": {
        "start": {
          "line": 12,
          "column": 10
        },
        "end": {
          "line": 12,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 402,
      "end": 410,
      "loc": {
        "start": {
          "line": 13,
          "column": 4
        },
        "end": {
          "line": 13,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 410,
      "end": 411,
      "loc": {
        "start": {
          "line": 13,
          "column": 12
        },
        "end": {
          "line": 13,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 412,
      "end": 420,
      "loc": {
        "start": {
          "line": 13,
          "column": 14
        },
        "end": {
          "line": 13,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 420,
      "end": 421,
      "loc": {
        "start": {
          "line": 13,
          "column": 22
        },
        "end": {
          "line": 13,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 421,
      "end": 426,
      "loc": {
        "start": {
          "line": 13,
          "column": 23
        },
        "end": {
          "line": 13,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 426,
      "end": 427,
      "loc": {
        "start": {
          "line": 13,
          "column": 28
        },
        "end": {
          "line": 13,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 428,
      "end": 429,
      "loc": {
        "start": {
          "line": 13,
          "column": 30
        },
        "end": {
          "line": 13,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 438,
      "end": 444,
      "loc": {
        "start": {
          "line": 14,
          "column": 8
        },
        "end": {
          "line": 14,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 445,
      "end": 450,
      "loc": {
        "start": {
          "line": 14,
          "column": 15
        },
        "end": {
          "line": 14,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 451,
      "end": 454,
      "loc": {
        "start": {
          "line": 14,
          "column": 21
        },
        "end": {
          "line": 14,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 455,
      "end": 459,
      "loc": {
        "start": {
          "line": 14,
          "column": 25
        },
        "end": {
          "line": 14,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 460,
      "end": 462,
      "loc": {
        "start": {
          "line": 14,
          "column": 30
        },
        "end": {
          "line": 14,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 463,
      "end": 468,
      "loc": {
        "start": {
          "line": 14,
          "column": 33
        },
        "end": {
          "line": 14,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 469,
      "end": 472,
      "loc": {
        "start": {
          "line": 14,
          "column": 39
        },
        "end": {
          "line": 14,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 473,
      "end": 482,
      "loc": {
        "start": {
          "line": 14,
          "column": 43
        },
        "end": {
          "line": 14,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 482,
      "end": 483,
      "loc": {
        "start": {
          "line": 14,
          "column": 52
        },
        "end": {
          "line": 14,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 488,
      "end": 489,
      "loc": {
        "start": {
          "line": 15,
          "column": 4
        },
        "end": {
          "line": 15,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 489,
      "end": 490,
      "loc": {
        "start": {
          "line": 15,
          "column": 5
        },
        "end": {
          "line": 15,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "required",
      "start": 496,
      "end": 504,
      "loc": {
        "start": {
          "line": 17,
          "column": 4
        },
        "end": {
          "line": 17,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 504,
      "end": 505,
      "loc": {
        "start": {
          "line": 17,
          "column": 12
        },
        "end": {
          "line": 17,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 505,
      "end": 510,
      "loc": {
        "start": {
          "line": 17,
          "column": 13
        },
        "end": {
          "line": 17,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 510,
      "end": 511,
      "loc": {
        "start": {
          "line": 17,
          "column": 18
        },
        "end": {
          "line": 17,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 512,
      "end": 522,
      "loc": {
        "start": {
          "line": 17,
          "column": 20
        },
        "end": {
          "line": 17,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 523,
      "end": 524,
      "loc": {
        "start": {
          "line": 17,
          "column": 31
        },
        "end": {
          "line": 17,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 525,
      "end": 527,
      "loc": {
        "start": {
          "line": 17,
          "column": 33
        },
        "end": {
          "line": 17,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 527,
      "end": 528,
      "loc": {
        "start": {
          "line": 17,
          "column": 35
        },
        "end": {
          "line": 17,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 529,
      "end": 530,
      "loc": {
        "start": {
          "line": 17,
          "column": 37
        },
        "end": {
          "line": 17,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 539,
      "end": 541,
      "loc": {
        "start": {
          "line": 18,
          "column": 8
        },
        "end": {
          "line": 18,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 542,
      "end": 543,
      "loc": {
        "start": {
          "line": 18,
          "column": 11
        },
        "end": {
          "line": 18,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 543,
      "end": 547,
      "loc": {
        "start": {
          "line": 18,
          "column": 12
        },
        "end": {
          "line": 18,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 547,
      "end": 548,
      "loc": {
        "start": {
          "line": 18,
          "column": 16
        },
        "end": {
          "line": 18,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 548,
      "end": 556,
      "loc": {
        "start": {
          "line": 18,
          "column": 17
        },
        "end": {
          "line": 18,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 556,
      "end": 557,
      "loc": {
        "start": {
          "line": 18,
          "column": 25
        },
        "end": {
          "line": 18,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 557,
      "end": 562,
      "loc": {
        "start": {
          "line": 18,
          "column": 26
        },
        "end": {
          "line": 18,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 562,
      "end": 563,
      "loc": {
        "start": {
          "line": 18,
          "column": 31
        },
        "end": {
          "line": 18,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 563,
      "end": 564,
      "loc": {
        "start": {
          "line": 18,
          "column": 32
        },
        "end": {
          "line": 18,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 565,
      "end": 566,
      "loc": {
        "start": {
          "line": 18,
          "column": 34
        },
        "end": {
          "line": 18,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 579,
      "end": 584,
      "loc": {
        "start": {
          "line": 19,
          "column": 12
        },
        "end": {
          "line": 19,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 585,
      "end": 588,
      "loc": {
        "start": {
          "line": 19,
          "column": 18
        },
        "end": {
          "line": 19,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 589,
      "end": 594,
      "loc": {
        "start": {
          "line": 19,
          "column": 22
        },
        "end": {
          "line": 19,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 594,
      "end": 595,
      "loc": {
        "start": {
          "line": 19,
          "column": 27
        },
        "end": {
          "line": 19,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 595,
      "end": 596,
      "loc": {
        "start": {
          "line": 19,
          "column": 28
        },
        "end": {
          "line": 19,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "value required ",
      "start": 596,
      "end": 611,
      "loc": {
        "start": {
          "line": 19,
          "column": 29
        },
        "end": {
          "line": 19,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 611,
      "end": 613,
      "loc": {
        "start": {
          "line": 19,
          "column": 44
        },
        "end": {
          "line": 19,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 613,
      "end": 623,
      "loc": {
        "start": {
          "line": 19,
          "column": 46
        },
        "end": {
          "line": 19,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 623,
      "end": 624,
      "loc": {
        "start": {
          "line": 19,
          "column": 56
        },
        "end": {
          "line": 19,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 624,
      "end": 625,
      "loc": {
        "start": {
          "line": 19,
          "column": 57
        },
        "end": {
          "line": 19,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 625,
      "end": 627,
      "loc": {
        "start": {
          "line": 19,
          "column": 58
        },
        "end": {
          "line": 19,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 627,
      "end": 632,
      "loc": {
        "start": {
          "line": 19,
          "column": 60
        },
        "end": {
          "line": 19,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 632,
      "end": 633,
      "loc": {
        "start": {
          "line": 19,
          "column": 65
        },
        "end": {
          "line": 19,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 633,
      "end": 633,
      "loc": {
        "start": {
          "line": 19,
          "column": 66
        },
        "end": {
          "line": 19,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 633,
      "end": 634,
      "loc": {
        "start": {
          "line": 19,
          "column": 66
        },
        "end": {
          "line": 19,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 634,
      "end": 635,
      "loc": {
        "start": {
          "line": 19,
          "column": 67
        },
        "end": {
          "line": 19,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 635,
      "end": 636,
      "loc": {
        "start": {
          "line": 19,
          "column": 68
        },
        "end": {
          "line": 19,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 645,
      "end": 646,
      "loc": {
        "start": {
          "line": 20,
          "column": 8
        },
        "end": {
          "line": 20,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 655,
      "end": 661,
      "loc": {
        "start": {
          "line": 21,
          "column": 8
        },
        "end": {
          "line": 21,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 662,
      "end": 667,
      "loc": {
        "start": {
          "line": 21,
          "column": 15
        },
        "end": {
          "line": 21,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 667,
      "end": 668,
      "loc": {
        "start": {
          "line": 21,
          "column": 20
        },
        "end": {
          "line": 21,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 673,
      "end": 674,
      "loc": {
        "start": {
          "line": 22,
          "column": 4
        },
        "end": {
          "line": 22,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 674,
      "end": 675,
      "loc": {
        "start": {
          "line": 22,
          "column": 5
        },
        "end": {
          "line": 22,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_long",
      "start": 681,
      "end": 693,
      "loc": {
        "start": {
          "line": 24,
          "column": 4
        },
        "end": {
          "line": 24,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 693,
      "end": 694,
      "loc": {
        "start": {
          "line": 24,
          "column": 16
        },
        "end": {
          "line": 24,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 694,
      "end": 699,
      "loc": {
        "start": {
          "line": 24,
          "column": 17
        },
        "end": {
          "line": 24,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 699,
      "end": 700,
      "loc": {
        "start": {
          "line": 24,
          "column": 22
        },
        "end": {
          "line": 24,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 701,
      "end": 711,
      "loc": {
        "start": {
          "line": 24,
          "column": 24
        },
        "end": {
          "line": 24,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 712,
      "end": 713,
      "loc": {
        "start": {
          "line": 24,
          "column": 35
        },
        "end": {
          "line": 24,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 714,
      "end": 716,
      "loc": {
        "start": {
          "line": 24,
          "column": 37
        },
        "end": {
          "line": 24,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 716,
      "end": 717,
      "loc": {
        "start": {
          "line": 24,
          "column": 39
        },
        "end": {
          "line": 24,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 718,
      "end": 719,
      "loc": {
        "start": {
          "line": 24,
          "column": 41
        },
        "end": {
          "line": 24,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 728,
      "end": 730,
      "loc": {
        "start": {
          "line": 25,
          "column": 8
        },
        "end": {
          "line": 25,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 731,
      "end": 732,
      "loc": {
        "start": {
          "line": 25,
          "column": 11
        },
        "end": {
          "line": 25,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 732,
      "end": 733,
      "loc": {
        "start": {
          "line": 25,
          "column": 12
        },
        "end": {
          "line": 25,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 733,
      "end": 737,
      "loc": {
        "start": {
          "line": 25,
          "column": 13
        },
        "end": {
          "line": 25,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 737,
      "end": 738,
      "loc": {
        "start": {
          "line": 25,
          "column": 17
        },
        "end": {
          "line": 25,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isLong",
      "start": 738,
      "end": 744,
      "loc": {
        "start": {
          "line": 25,
          "column": 18
        },
        "end": {
          "line": 25,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 744,
      "end": 745,
      "loc": {
        "start": {
          "line": 25,
          "column": 24
        },
        "end": {
          "line": 25,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 745,
      "end": 750,
      "loc": {
        "start": {
          "line": 25,
          "column": 25
        },
        "end": {
          "line": 25,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 750,
      "end": 751,
      "loc": {
        "start": {
          "line": 25,
          "column": 30
        },
        "end": {
          "line": 25,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 751,
      "end": 752,
      "loc": {
        "start": {
          "line": 25,
          "column": 31
        },
        "end": {
          "line": 25,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 753,
      "end": 754,
      "loc": {
        "start": {
          "line": 25,
          "column": 33
        },
        "end": {
          "line": 25,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 767,
      "end": 772,
      "loc": {
        "start": {
          "line": 26,
          "column": 12
        },
        "end": {
          "line": 26,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 773,
      "end": 776,
      "loc": {
        "start": {
          "line": 26,
          "column": 18
        },
        "end": {
          "line": 26,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 777,
      "end": 782,
      "loc": {
        "start": {
          "line": 26,
          "column": 22
        },
        "end": {
          "line": 26,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 782,
      "end": 783,
      "loc": {
        "start": {
          "line": 26,
          "column": 27
        },
        "end": {
          "line": 26,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 783,
      "end": 784,
      "loc": {
        "start": {
          "line": 26,
          "column": 28
        },
        "end": {
          "line": 26,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Long value required ",
      "start": 784,
      "end": 804,
      "loc": {
        "start": {
          "line": 26,
          "column": 29
        },
        "end": {
          "line": 26,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 804,
      "end": 806,
      "loc": {
        "start": {
          "line": 26,
          "column": 49
        },
        "end": {
          "line": 26,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 806,
      "end": 816,
      "loc": {
        "start": {
          "line": 26,
          "column": 51
        },
        "end": {
          "line": 26,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 816,
      "end": 817,
      "loc": {
        "start": {
          "line": 26,
          "column": 61
        },
        "end": {
          "line": 26,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 817,
      "end": 818,
      "loc": {
        "start": {
          "line": 26,
          "column": 62
        },
        "end": {
          "line": 26,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 818,
      "end": 820,
      "loc": {
        "start": {
          "line": 26,
          "column": 63
        },
        "end": {
          "line": 26,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 820,
      "end": 825,
      "loc": {
        "start": {
          "line": 26,
          "column": 65
        },
        "end": {
          "line": 26,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 825,
      "end": 826,
      "loc": {
        "start": {
          "line": 26,
          "column": 70
        },
        "end": {
          "line": 26,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 826,
      "end": 826,
      "loc": {
        "start": {
          "line": 26,
          "column": 71
        },
        "end": {
          "line": 26,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 826,
      "end": 827,
      "loc": {
        "start": {
          "line": 26,
          "column": 71
        },
        "end": {
          "line": 26,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 827,
      "end": 828,
      "loc": {
        "start": {
          "line": 26,
          "column": 72
        },
        "end": {
          "line": 26,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 828,
      "end": 829,
      "loc": {
        "start": {
          "line": 26,
          "column": 73
        },
        "end": {
          "line": 26,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 838,
      "end": 839,
      "loc": {
        "start": {
          "line": 27,
          "column": 8
        },
        "end": {
          "line": 27,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 848,
      "end": 854,
      "loc": {
        "start": {
          "line": 28,
          "column": 8
        },
        "end": {
          "line": 28,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 855,
      "end": 860,
      "loc": {
        "start": {
          "line": 28,
          "column": 15
        },
        "end": {
          "line": 28,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 860,
      "end": 861,
      "loc": {
        "start": {
          "line": 28,
          "column": 20
        },
        "end": {
          "line": 28,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 866,
      "end": 867,
      "loc": {
        "start": {
          "line": 29,
          "column": 4
        },
        "end": {
          "line": 29,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 867,
      "end": 868,
      "loc": {
        "start": {
          "line": 29,
          "column": 5
        },
        "end": {
          "line": 29,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 874,
      "end": 880,
      "loc": {
        "start": {
          "line": 31,
          "column": 4
        },
        "end": {
          "line": 31,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 880,
      "end": 881,
      "loc": {
        "start": {
          "line": 31,
          "column": 10
        },
        "end": {
          "line": 31,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 881,
      "end": 886,
      "loc": {
        "start": {
          "line": 31,
          "column": 11
        },
        "end": {
          "line": 31,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 886,
      "end": 887,
      "loc": {
        "start": {
          "line": 31,
          "column": 16
        },
        "end": {
          "line": 31,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 888,
      "end": 889,
      "loc": {
        "start": {
          "line": 31,
          "column": 18
        },
        "end": {
          "line": 31,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 898,
      "end": 900,
      "loc": {
        "start": {
          "line": 32,
          "column": 8
        },
        "end": {
          "line": 32,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 901,
      "end": 902,
      "loc": {
        "start": {
          "line": 32,
          "column": 11
        },
        "end": {
          "line": 32,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 902,
      "end": 906,
      "loc": {
        "start": {
          "line": 32,
          "column": 12
        },
        "end": {
          "line": 32,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 906,
      "end": 907,
      "loc": {
        "start": {
          "line": 32,
          "column": 16
        },
        "end": {
          "line": 32,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 907,
      "end": 915,
      "loc": {
        "start": {
          "line": 32,
          "column": 17
        },
        "end": {
          "line": 32,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 915,
      "end": 916,
      "loc": {
        "start": {
          "line": 32,
          "column": 25
        },
        "end": {
          "line": 32,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 916,
      "end": 921,
      "loc": {
        "start": {
          "line": 32,
          "column": 26
        },
        "end": {
          "line": 32,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 921,
      "end": 922,
      "loc": {
        "start": {
          "line": 32,
          "column": 31
        },
        "end": {
          "line": 32,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 922,
      "end": 923,
      "loc": {
        "start": {
          "line": 32,
          "column": 32
        },
        "end": {
          "line": 32,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 924,
      "end": 925,
      "loc": {
        "start": {
          "line": 32,
          "column": 34
        },
        "end": {
          "line": 32,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 938,
      "end": 944,
      "loc": {
        "start": {
          "line": 33,
          "column": 12
        },
        "end": {
          "line": 33,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 945,
      "end": 950,
      "loc": {
        "start": {
          "line": 33,
          "column": 19
        },
        "end": {
          "line": 33,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 950,
      "end": 951,
      "loc": {
        "start": {
          "line": 33,
          "column": 24
        },
        "end": {
          "line": 33,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 960,
      "end": 961,
      "loc": {
        "start": {
          "line": 34,
          "column": 8
        },
        "end": {
          "line": 34,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 970,
      "end": 972,
      "loc": {
        "start": {
          "line": 35,
          "column": 8
        },
        "end": {
          "line": 35,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 973,
      "end": 974,
      "loc": {
        "start": {
          "line": 35,
          "column": 11
        },
        "end": {
          "line": 35,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 974,
      "end": 980,
      "loc": {
        "start": {
          "line": 35,
          "column": 12
        },
        "end": {
          "line": 35,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 981,
      "end": 986,
      "loc": {
        "start": {
          "line": 35,
          "column": 19
        },
        "end": {
          "line": 35,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 987,
      "end": 990,
      "loc": {
        "start": {
          "line": 35,
          "column": 25
        },
        "end": {
          "line": 35,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string",
      "start": 991,
      "end": 999,
      "loc": {
        "start": {
          "line": 35,
          "column": 29
        },
        "end": {
          "line": 35,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 999,
      "end": 1000,
      "loc": {
        "start": {
          "line": 35,
          "column": 37
        },
        "end": {
          "line": 35,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1001,
      "end": 1002,
      "loc": {
        "start": {
          "line": 35,
          "column": 39
        },
        "end": {
          "line": 35,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 1015,
      "end": 1020,
      "loc": {
        "start": {
          "line": 36,
          "column": 12
        },
        "end": {
          "line": 36,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1021,
      "end": 1024,
      "loc": {
        "start": {
          "line": 36,
          "column": 18
        },
        "end": {
          "line": 36,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 1025,
      "end": 1030,
      "loc": {
        "start": {
          "line": 36,
          "column": 22
        },
        "end": {
          "line": 36,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1030,
      "end": 1031,
      "loc": {
        "start": {
          "line": 36,
          "column": 27
        },
        "end": {
          "line": 36,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1031,
      "end": 1032,
      "loc": {
        "start": {
          "line": 36,
          "column": 28
        },
        "end": {
          "line": 36,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string required: ",
      "start": 1032,
      "end": 1049,
      "loc": {
        "start": {
          "line": 36,
          "column": 29
        },
        "end": {
          "line": 36,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1049,
      "end": 1051,
      "loc": {
        "start": {
          "line": 36,
          "column": 46
        },
        "end": {
          "line": 36,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1051,
      "end": 1056,
      "loc": {
        "start": {
          "line": 36,
          "column": 48
        },
        "end": {
          "line": 36,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1056,
      "end": 1057,
      "loc": {
        "start": {
          "line": 36,
          "column": 53
        },
        "end": {
          "line": 36,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1057,
      "end": 1057,
      "loc": {
        "start": {
          "line": 36,
          "column": 54
        },
        "end": {
          "line": 36,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1057,
      "end": 1058,
      "loc": {
        "start": {
          "line": 36,
          "column": 54
        },
        "end": {
          "line": 36,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1058,
      "end": 1059,
      "loc": {
        "start": {
          "line": 36,
          "column": 55
        },
        "end": {
          "line": 36,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1059,
      "end": 1060,
      "loc": {
        "start": {
          "line": 36,
          "column": 56
        },
        "end": {
          "line": 36,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1069,
      "end": 1070,
      "loc": {
        "start": {
          "line": 37,
          "column": 8
        },
        "end": {
          "line": 37,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1079,
      "end": 1085,
      "loc": {
        "start": {
          "line": 38,
          "column": 8
        },
        "end": {
          "line": 38,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1086,
      "end": 1091,
      "loc": {
        "start": {
          "line": 38,
          "column": 15
        },
        "end": {
          "line": 38,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1091,
      "end": 1092,
      "loc": {
        "start": {
          "line": 38,
          "column": 20
        },
        "end": {
          "line": 38,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1097,
      "end": 1098,
      "loc": {
        "start": {
          "line": 39,
          "column": 4
        },
        "end": {
          "line": 39,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1098,
      "end": 1099,
      "loc": {
        "start": {
          "line": 39,
          "column": 5
        },
        "end": {
          "line": 39,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "number",
      "start": 1105,
      "end": 1111,
      "loc": {
        "start": {
          "line": 41,
          "column": 4
        },
        "end": {
          "line": 41,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1111,
      "end": 1112,
      "loc": {
        "start": {
          "line": 41,
          "column": 10
        },
        "end": {
          "line": 41,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1112,
      "end": 1117,
      "loc": {
        "start": {
          "line": 41,
          "column": 11
        },
        "end": {
          "line": 41,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1117,
      "end": 1118,
      "loc": {
        "start": {
          "line": 41,
          "column": 16
        },
        "end": {
          "line": 41,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1119,
      "end": 1120,
      "loc": {
        "start": {
          "line": 41,
          "column": 18
        },
        "end": {
          "line": 41,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1129,
      "end": 1131,
      "loc": {
        "start": {
          "line": 42,
          "column": 8
        },
        "end": {
          "line": 42,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1132,
      "end": 1133,
      "loc": {
        "start": {
          "line": 42,
          "column": 11
        },
        "end": {
          "line": 42,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1133,
      "end": 1137,
      "loc": {
        "start": {
          "line": 42,
          "column": 12
        },
        "end": {
          "line": 42,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1137,
      "end": 1138,
      "loc": {
        "start": {
          "line": 42,
          "column": 16
        },
        "end": {
          "line": 42,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 1138,
      "end": 1146,
      "loc": {
        "start": {
          "line": 42,
          "column": 17
        },
        "end": {
          "line": 42,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1146,
      "end": 1147,
      "loc": {
        "start": {
          "line": 42,
          "column": 25
        },
        "end": {
          "line": 42,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1147,
      "end": 1152,
      "loc": {
        "start": {
          "line": 42,
          "column": 26
        },
        "end": {
          "line": 42,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1152,
      "end": 1153,
      "loc": {
        "start": {
          "line": 42,
          "column": 31
        },
        "end": {
          "line": 42,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1153,
      "end": 1154,
      "loc": {
        "start": {
          "line": 42,
          "column": 32
        },
        "end": {
          "line": 42,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1155,
      "end": 1156,
      "loc": {
        "start": {
          "line": 42,
          "column": 34
        },
        "end": {
          "line": 42,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1169,
      "end": 1175,
      "loc": {
        "start": {
          "line": 43,
          "column": 12
        },
        "end": {
          "line": 43,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1176,
      "end": 1181,
      "loc": {
        "start": {
          "line": 43,
          "column": 19
        },
        "end": {
          "line": 43,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1181,
      "end": 1182,
      "loc": {
        "start": {
          "line": 43,
          "column": 24
        },
        "end": {
          "line": 43,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1191,
      "end": 1192,
      "loc": {
        "start": {
          "line": 44,
          "column": 8
        },
        "end": {
          "line": 44,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1201,
      "end": 1203,
      "loc": {
        "start": {
          "line": 45,
          "column": 8
        },
        "end": {
          "line": 45,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1204,
      "end": 1205,
      "loc": {
        "start": {
          "line": 45,
          "column": 11
        },
        "end": {
          "line": 45,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 1205,
      "end": 1211,
      "loc": {
        "start": {
          "line": 45,
          "column": 12
        },
        "end": {
          "line": 45,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1212,
      "end": 1217,
      "loc": {
        "start": {
          "line": 45,
          "column": 19
        },
        "end": {
          "line": 45,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 1218,
      "end": 1221,
      "loc": {
        "start": {
          "line": 45,
          "column": 25
        },
        "end": {
          "line": 45,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 1222,
      "end": 1230,
      "loc": {
        "start": {
          "line": 45,
          "column": 29
        },
        "end": {
          "line": 45,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1230,
      "end": 1231,
      "loc": {
        "start": {
          "line": 45,
          "column": 37
        },
        "end": {
          "line": 45,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1232,
      "end": 1233,
      "loc": {
        "start": {
          "line": 45,
          "column": 39
        },
        "end": {
          "line": 45,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 1246,
      "end": 1251,
      "loc": {
        "start": {
          "line": 46,
          "column": 12
        },
        "end": {
          "line": 46,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1252,
      "end": 1255,
      "loc": {
        "start": {
          "line": 46,
          "column": 18
        },
        "end": {
          "line": 46,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 1256,
      "end": 1261,
      "loc": {
        "start": {
          "line": 46,
          "column": 22
        },
        "end": {
          "line": 46,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1261,
      "end": 1262,
      "loc": {
        "start": {
          "line": 46,
          "column": 27
        },
        "end": {
          "line": 46,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1262,
      "end": 1263,
      "loc": {
        "start": {
          "line": 46,
          "column": 28
        },
        "end": {
          "line": 46,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number required: ",
      "start": 1263,
      "end": 1280,
      "loc": {
        "start": {
          "line": 46,
          "column": 29
        },
        "end": {
          "line": 46,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1280,
      "end": 1282,
      "loc": {
        "start": {
          "line": 46,
          "column": 46
        },
        "end": {
          "line": 46,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1282,
      "end": 1287,
      "loc": {
        "start": {
          "line": 46,
          "column": 48
        },
        "end": {
          "line": 46,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1287,
      "end": 1288,
      "loc": {
        "start": {
          "line": 46,
          "column": 53
        },
        "end": {
          "line": 46,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1288,
      "end": 1288,
      "loc": {
        "start": {
          "line": 46,
          "column": 54
        },
        "end": {
          "line": 46,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1288,
      "end": 1289,
      "loc": {
        "start": {
          "line": 46,
          "column": 54
        },
        "end": {
          "line": 46,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1289,
      "end": 1290,
      "loc": {
        "start": {
          "line": 46,
          "column": 55
        },
        "end": {
          "line": 46,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1290,
      "end": 1291,
      "loc": {
        "start": {
          "line": 46,
          "column": 56
        },
        "end": {
          "line": 46,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1300,
      "end": 1301,
      "loc": {
        "start": {
          "line": 47,
          "column": 8
        },
        "end": {
          "line": 47,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1310,
      "end": 1316,
      "loc": {
        "start": {
          "line": 48,
          "column": 8
        },
        "end": {
          "line": 48,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1317,
      "end": 1322,
      "loc": {
        "start": {
          "line": 48,
          "column": 15
        },
        "end": {
          "line": 48,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1322,
      "end": 1323,
      "loc": {
        "start": {
          "line": 48,
          "column": 20
        },
        "end": {
          "line": 48,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1328,
      "end": 1329,
      "loc": {
        "start": {
          "line": 49,
          "column": 4
        },
        "end": {
          "line": 49,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1329,
      "end": 1330,
      "loc": {
        "start": {
          "line": 49,
          "column": 5
        },
        "end": {
          "line": 49,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "whole_number",
      "start": 1336,
      "end": 1348,
      "loc": {
        "start": {
          "line": 51,
          "column": 4
        },
        "end": {
          "line": 51,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1348,
      "end": 1349,
      "loc": {
        "start": {
          "line": 51,
          "column": 16
        },
        "end": {
          "line": 51,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1349,
      "end": 1354,
      "loc": {
        "start": {
          "line": 51,
          "column": 17
        },
        "end": {
          "line": 51,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1354,
      "end": 1355,
      "loc": {
        "start": {
          "line": 51,
          "column": 22
        },
        "end": {
          "line": 51,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 1356,
      "end": 1366,
      "loc": {
        "start": {
          "line": 51,
          "column": 24
        },
        "end": {
          "line": 51,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1367,
      "end": 1368,
      "loc": {
        "start": {
          "line": 51,
          "column": 35
        },
        "end": {
          "line": 51,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1369,
      "end": 1371,
      "loc": {
        "start": {
          "line": 51,
          "column": 37
        },
        "end": {
          "line": 51,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1371,
      "end": 1372,
      "loc": {
        "start": {
          "line": 51,
          "column": 39
        },
        "end": {
          "line": 51,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1373,
      "end": 1374,
      "loc": {
        "start": {
          "line": 51,
          "column": 41
        },
        "end": {
          "line": 51,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1383,
      "end": 1385,
      "loc": {
        "start": {
          "line": 52,
          "column": 8
        },
        "end": {
          "line": 52,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1386,
      "end": 1387,
      "loc": {
        "start": {
          "line": 52,
          "column": 11
        },
        "end": {
          "line": 52,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1387,
      "end": 1391,
      "loc": {
        "start": {
          "line": 52,
          "column": 12
        },
        "end": {
          "line": 52,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1391,
      "end": 1392,
      "loc": {
        "start": {
          "line": 52,
          "column": 16
        },
        "end": {
          "line": 52,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 1392,
      "end": 1400,
      "loc": {
        "start": {
          "line": 52,
          "column": 17
        },
        "end": {
          "line": 52,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1400,
      "end": 1401,
      "loc": {
        "start": {
          "line": 52,
          "column": 25
        },
        "end": {
          "line": 52,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1401,
      "end": 1406,
      "loc": {
        "start": {
          "line": 52,
          "column": 26
        },
        "end": {
          "line": 52,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1406,
      "end": 1407,
      "loc": {
        "start": {
          "line": 52,
          "column": 31
        },
        "end": {
          "line": 52,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1407,
      "end": 1408,
      "loc": {
        "start": {
          "line": 52,
          "column": 32
        },
        "end": {
          "line": 52,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1409,
      "end": 1410,
      "loc": {
        "start": {
          "line": 52,
          "column": 34
        },
        "end": {
          "line": 52,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1423,
      "end": 1429,
      "loc": {
        "start": {
          "line": 53,
          "column": 12
        },
        "end": {
          "line": 53,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1430,
      "end": 1435,
      "loc": {
        "start": {
          "line": 53,
          "column": 19
        },
        "end": {
          "line": 53,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1435,
      "end": 1436,
      "loc": {
        "start": {
          "line": 53,
          "column": 24
        },
        "end": {
          "line": 53,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1445,
      "end": 1446,
      "loc": {
        "start": {
          "line": 54,
          "column": 8
        },
        "end": {
          "line": 54,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1455,
      "end": 1457,
      "loc": {
        "start": {
          "line": 55,
          "column": 8
        },
        "end": {
          "line": 55,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1458,
      "end": 1459,
      "loc": {
        "start": {
          "line": 55,
          "column": 11
        },
        "end": {
          "line": 55,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "\\.",
        "flags": ""
      },
      "start": 1459,
      "end": 1463,
      "loc": {
        "start": {
          "line": 55,
          "column": 12
        },
        "end": {
          "line": 55,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1463,
      "end": 1464,
      "loc": {
        "start": {
          "line": 55,
          "column": 16
        },
        "end": {
          "line": 55,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 1464,
      "end": 1468,
      "loc": {
        "start": {
          "line": 55,
          "column": 17
        },
        "end": {
          "line": 55,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1468,
      "end": 1469,
      "loc": {
        "start": {
          "line": 55,
          "column": 21
        },
        "end": {
          "line": 55,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1469,
      "end": 1474,
      "loc": {
        "start": {
          "line": 55,
          "column": 22
        },
        "end": {
          "line": 55,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1474,
      "end": 1475,
      "loc": {
        "start": {
          "line": 55,
          "column": 27
        },
        "end": {
          "line": 55,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1475,
      "end": 1476,
      "loc": {
        "start": {
          "line": 55,
          "column": 28
        },
        "end": {
          "line": 55,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1477,
      "end": 1478,
      "loc": {
        "start": {
          "line": 55,
          "column": 30
        },
        "end": {
          "line": 55,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 1491,
      "end": 1496,
      "loc": {
        "start": {
          "line": 56,
          "column": 12
        },
        "end": {
          "line": 56,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1497,
      "end": 1500,
      "loc": {
        "start": {
          "line": 56,
          "column": 18
        },
        "end": {
          "line": 56,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 1501,
      "end": 1506,
      "loc": {
        "start": {
          "line": 56,
          "column": 22
        },
        "end": {
          "line": 56,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1506,
      "end": 1507,
      "loc": {
        "start": {
          "line": 56,
          "column": 27
        },
        "end": {
          "line": 56,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1507,
      "end": 1508,
      "loc": {
        "start": {
          "line": 56,
          "column": 28
        },
        "end": {
          "line": 56,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "whole number required ",
      "start": 1508,
      "end": 1530,
      "loc": {
        "start": {
          "line": 56,
          "column": 29
        },
        "end": {
          "line": 56,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1530,
      "end": 1532,
      "loc": {
        "start": {
          "line": 56,
          "column": 51
        },
        "end": {
          "line": 56,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 1532,
      "end": 1542,
      "loc": {
        "start": {
          "line": 56,
          "column": 53
        },
        "end": {
          "line": 56,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1542,
      "end": 1543,
      "loc": {
        "start": {
          "line": 56,
          "column": 63
        },
        "end": {
          "line": 56,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 1543,
      "end": 1544,
      "loc": {
        "start": {
          "line": 56,
          "column": 64
        },
        "end": {
          "line": 56,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1544,
      "end": 1546,
      "loc": {
        "start": {
          "line": 56,
          "column": 65
        },
        "end": {
          "line": 56,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1546,
      "end": 1551,
      "loc": {
        "start": {
          "line": 56,
          "column": 67
        },
        "end": {
          "line": 56,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1551,
      "end": 1552,
      "loc": {
        "start": {
          "line": 56,
          "column": 72
        },
        "end": {
          "line": 56,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1552,
      "end": 1552,
      "loc": {
        "start": {
          "line": 56,
          "column": 73
        },
        "end": {
          "line": 56,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1552,
      "end": 1553,
      "loc": {
        "start": {
          "line": 56,
          "column": 73
        },
        "end": {
          "line": 56,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1553,
      "end": 1554,
      "loc": {
        "start": {
          "line": 56,
          "column": 74
        },
        "end": {
          "line": 56,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1554,
      "end": 1555,
      "loc": {
        "start": {
          "line": 56,
          "column": 75
        },
        "end": {
          "line": 56,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1564,
      "end": 1565,
      "loc": {
        "start": {
          "line": 57,
          "column": 8
        },
        "end": {
          "line": 57,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1574,
      "end": 1580,
      "loc": {
        "start": {
          "line": 58,
          "column": 8
        },
        "end": {
          "line": 58,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1581,
      "end": 1586,
      "loc": {
        "start": {
          "line": 58,
          "column": 15
        },
        "end": {
          "line": 58,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1586,
      "end": 1587,
      "loc": {
        "start": {
          "line": 58,
          "column": 20
        },
        "end": {
          "line": 58,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1592,
      "end": 1593,
      "loc": {
        "start": {
          "line": 59,
          "column": 4
        },
        "end": {
          "line": 59,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1593,
      "end": 1594,
      "loc": {
        "start": {
          "line": 59,
          "column": 5
        },
        "end": {
          "line": 59,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 1600,
      "end": 1608,
      "loc": {
        "start": {
          "line": 61,
          "column": 4
        },
        "end": {
          "line": 61,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1608,
      "end": 1609,
      "loc": {
        "start": {
          "line": 61,
          "column": 12
        },
        "end": {
          "line": 61,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1609,
      "end": 1614,
      "loc": {
        "start": {
          "line": 61,
          "column": 13
        },
        "end": {
          "line": 61,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1614,
      "end": 1615,
      "loc": {
        "start": {
          "line": 61,
          "column": 18
        },
        "end": {
          "line": 61,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 1616,
      "end": 1626,
      "loc": {
        "start": {
          "line": 61,
          "column": 20
        },
        "end": {
          "line": 61,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1627,
      "end": 1628,
      "loc": {
        "start": {
          "line": 61,
          "column": 31
        },
        "end": {
          "line": 61,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1629,
      "end": 1631,
      "loc": {
        "start": {
          "line": 61,
          "column": 33
        },
        "end": {
          "line": 61,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1631,
      "end": 1632,
      "loc": {
        "start": {
          "line": 61,
          "column": 35
        },
        "end": {
          "line": 61,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1633,
      "end": 1634,
      "loc": {
        "start": {
          "line": 61,
          "column": 37
        },
        "end": {
          "line": 61,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1643,
      "end": 1645,
      "loc": {
        "start": {
          "line": 62,
          "column": 8
        },
        "end": {
          "line": 62,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1646,
      "end": 1647,
      "loc": {
        "start": {
          "line": 62,
          "column": 11
        },
        "end": {
          "line": 62,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1647,
      "end": 1651,
      "loc": {
        "start": {
          "line": 62,
          "column": 12
        },
        "end": {
          "line": 62,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1651,
      "end": 1652,
      "loc": {
        "start": {
          "line": 62,
          "column": 16
        },
        "end": {
          "line": 62,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 1652,
      "end": 1660,
      "loc": {
        "start": {
          "line": 62,
          "column": 17
        },
        "end": {
          "line": 62,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1660,
      "end": 1661,
      "loc": {
        "start": {
          "line": 62,
          "column": 25
        },
        "end": {
          "line": 62,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1661,
      "end": 1666,
      "loc": {
        "start": {
          "line": 62,
          "column": 26
        },
        "end": {
          "line": 62,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1666,
      "end": 1667,
      "loc": {
        "start": {
          "line": 62,
          "column": 31
        },
        "end": {
          "line": 62,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1667,
      "end": 1668,
      "loc": {
        "start": {
          "line": 62,
          "column": 32
        },
        "end": {
          "line": 62,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1669,
      "end": 1670,
      "loc": {
        "start": {
          "line": 62,
          "column": 34
        },
        "end": {
          "line": 62,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1683,
      "end": 1689,
      "loc": {
        "start": {
          "line": 63,
          "column": 12
        },
        "end": {
          "line": 63,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1690,
      "end": 1695,
      "loc": {
        "start": {
          "line": 63,
          "column": 19
        },
        "end": {
          "line": 63,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1695,
      "end": 1696,
      "loc": {
        "start": {
          "line": 63,
          "column": 24
        },
        "end": {
          "line": 63,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1705,
      "end": 1706,
      "loc": {
        "start": {
          "line": 64,
          "column": 8
        },
        "end": {
          "line": 64,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1715,
      "end": 1717,
      "loc": {
        "start": {
          "line": 65,
          "column": 8
        },
        "end": {
          "line": 65,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1718,
      "end": 1719,
      "loc": {
        "start": {
          "line": 65,
          "column": 11
        },
        "end": {
          "line": 65,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "-",
        "flags": ""
      },
      "start": 1719,
      "end": 1722,
      "loc": {
        "start": {
          "line": 65,
          "column": 12
        },
        "end": {
          "line": 65,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1722,
      "end": 1723,
      "loc": {
        "start": {
          "line": 65,
          "column": 15
        },
        "end": {
          "line": 65,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 1723,
      "end": 1727,
      "loc": {
        "start": {
          "line": 65,
          "column": 16
        },
        "end": {
          "line": 65,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1727,
      "end": 1728,
      "loc": {
        "start": {
          "line": 65,
          "column": 20
        },
        "end": {
          "line": 65,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1728,
      "end": 1733,
      "loc": {
        "start": {
          "line": 65,
          "column": 21
        },
        "end": {
          "line": 65,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1733,
      "end": 1734,
      "loc": {
        "start": {
          "line": 65,
          "column": 26
        },
        "end": {
          "line": 65,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1734,
      "end": 1735,
      "loc": {
        "start": {
          "line": 65,
          "column": 27
        },
        "end": {
          "line": 65,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1736,
      "end": 1737,
      "loc": {
        "start": {
          "line": 65,
          "column": 29
        },
        "end": {
          "line": 65,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 1750,
      "end": 1755,
      "loc": {
        "start": {
          "line": 66,
          "column": 12
        },
        "end": {
          "line": 66,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1756,
      "end": 1759,
      "loc": {
        "start": {
          "line": 66,
          "column": 18
        },
        "end": {
          "line": 66,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 1760,
      "end": 1765,
      "loc": {
        "start": {
          "line": 66,
          "column": 22
        },
        "end": {
          "line": 66,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1765,
      "end": 1766,
      "loc": {
        "start": {
          "line": 66,
          "column": 27
        },
        "end": {
          "line": 66,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1766,
      "end": 1767,
      "loc": {
        "start": {
          "line": 66,
          "column": 28
        },
        "end": {
          "line": 66,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unsigned required ",
      "start": 1767,
      "end": 1785,
      "loc": {
        "start": {
          "line": 66,
          "column": 29
        },
        "end": {
          "line": 66,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1785,
      "end": 1787,
      "loc": {
        "start": {
          "line": 66,
          "column": 47
        },
        "end": {
          "line": 66,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 1787,
      "end": 1797,
      "loc": {
        "start": {
          "line": 66,
          "column": 49
        },
        "end": {
          "line": 66,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1797,
      "end": 1798,
      "loc": {
        "start": {
          "line": 66,
          "column": 59
        },
        "end": {
          "line": 66,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 1798,
      "end": 1799,
      "loc": {
        "start": {
          "line": 66,
          "column": 60
        },
        "end": {
          "line": 66,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1799,
      "end": 1801,
      "loc": {
        "start": {
          "line": 66,
          "column": 61
        },
        "end": {
          "line": 66,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1801,
      "end": 1806,
      "loc": {
        "start": {
          "line": 66,
          "column": 63
        },
        "end": {
          "line": 66,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1806,
      "end": 1807,
      "loc": {
        "start": {
          "line": 66,
          "column": 68
        },
        "end": {
          "line": 66,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1807,
      "end": 1807,
      "loc": {
        "start": {
          "line": 66,
          "column": 69
        },
        "end": {
          "line": 66,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1807,
      "end": 1808,
      "loc": {
        "start": {
          "line": 66,
          "column": 69
        },
        "end": {
          "line": 66,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1808,
      "end": 1809,
      "loc": {
        "start": {
          "line": 66,
          "column": 70
        },
        "end": {
          "line": 66,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1809,
      "end": 1810,
      "loc": {
        "start": {
          "line": 66,
          "column": 71
        },
        "end": {
          "line": 66,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1819,
      "end": 1820,
      "loc": {
        "start": {
          "line": 67,
          "column": 8
        },
        "end": {
          "line": 67,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1829,
      "end": 1835,
      "loc": {
        "start": {
          "line": 68,
          "column": 8
        },
        "end": {
          "line": 68,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1836,
      "end": 1841,
      "loc": {
        "start": {
          "line": 68,
          "column": 15
        },
        "end": {
          "line": 68,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1841,
      "end": 1842,
      "loc": {
        "start": {
          "line": 68,
          "column": 20
        },
        "end": {
          "line": 68,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1847,
      "end": 1848,
      "loc": {
        "start": {
          "line": 69,
          "column": 4
        },
        "end": {
          "line": 69,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1848,
      "end": 1849,
      "loc": {
        "start": {
          "line": 69,
          "column": 5
        },
        "end": {
          "line": 69,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_digits",
      "start": 1855,
      "end": 1864,
      "loc": {
        "start": {
          "line": 71,
          "column": 4
        },
        "end": {
          "line": 71,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1864,
      "end": 1865,
      "loc": {
        "start": {
          "line": 71,
          "column": 13
        },
        "end": {
          "line": 71,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 1866,
      "end": 1874,
      "loc": {
        "start": {
          "line": 71,
          "column": 15
        },
        "end": {
          "line": 71,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1874,
      "end": 1875,
      "loc": {
        "start": {
          "line": 71,
          "column": 23
        },
        "end": {
          "line": 71,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1875,
      "end": 1880,
      "loc": {
        "start": {
          "line": 71,
          "column": 24
        },
        "end": {
          "line": 71,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1880,
      "end": 1881,
      "loc": {
        "start": {
          "line": 71,
          "column": 29
        },
        "end": {
          "line": 71,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1882,
      "end": 1883,
      "loc": {
        "start": {
          "line": 71,
          "column": 31
        },
        "end": {
          "line": 71,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1892,
      "end": 1894,
      "loc": {
        "start": {
          "line": 72,
          "column": 8
        },
        "end": {
          "line": 72,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1895,
      "end": 1896,
      "loc": {
        "start": {
          "line": 72,
          "column": 11
        },
        "end": {
          "line": 72,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 1896,
      "end": 1902,
      "loc": {
        "start": {
          "line": 72,
          "column": 12
        },
        "end": {
          "line": 72,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1903,
      "end": 1908,
      "loc": {
        "start": {
          "line": 72,
          "column": 19
        },
        "end": {
          "line": 72,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 1909,
      "end": 1912,
      "loc": {
        "start": {
          "line": 72,
          "column": 25
        },
        "end": {
          "line": 72,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "numeric",
      "start": 1913,
      "end": 1922,
      "loc": {
        "start": {
          "line": 72,
          "column": 29
        },
        "end": {
          "line": 72,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1922,
      "end": 1923,
      "loc": {
        "start": {
          "line": 72,
          "column": 38
        },
        "end": {
          "line": 72,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1924,
      "end": 1925,
      "loc": {
        "start": {
          "line": 72,
          "column": 40
        },
        "end": {
          "line": 72,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1938,
      "end": 1944,
      "loc": {
        "start": {
          "line": 73,
          "column": 12
        },
        "end": {
          "line": 73,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 1945,
      "end": 1949,
      "loc": {
        "start": {
          "line": 73,
          "column": 19
        },
        "end": {
          "line": 73,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1949,
      "end": 1950,
      "loc": {
        "start": {
          "line": 73,
          "column": 23
        },
        "end": {
          "line": 73,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1959,
      "end": 1960,
      "loc": {
        "start": {
          "line": 74,
          "column": 8
        },
        "end": {
          "line": 74,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1969,
      "end": 1975,
      "loc": {
        "start": {
          "line": 75,
          "column": 8
        },
        "end": {
          "line": 75,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "^[0-9]+$",
        "flags": ""
      },
      "start": 1976,
      "end": 1986,
      "loc": {
        "start": {
          "line": 75,
          "column": 15
        },
        "end": {
          "line": 75,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1986,
      "end": 1987,
      "loc": {
        "start": {
          "line": 75,
          "column": 25
        },
        "end": {
          "line": 75,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 1987,
      "end": 1991,
      "loc": {
        "start": {
          "line": 75,
          "column": 26
        },
        "end": {
          "line": 75,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1991,
      "end": 1992,
      "loc": {
        "start": {
          "line": 75,
          "column": 30
        },
        "end": {
          "line": 75,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 1992,
      "end": 1997,
      "loc": {
        "start": {
          "line": 75,
          "column": 31
        },
        "end": {
          "line": 75,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1997,
      "end": 1998,
      "loc": {
        "start": {
          "line": 75,
          "column": 36
        },
        "end": {
          "line": 75,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1998,
      "end": 1999,
      "loc": {
        "start": {
          "line": 75,
          "column": 37
        },
        "end": {
          "line": 75,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2004,
      "end": 2005,
      "loc": {
        "start": {
          "line": 76,
          "column": 4
        },
        "end": {
          "line": 76,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2005,
      "end": 2006,
      "loc": {
        "start": {
          "line": 76,
          "column": 5
        },
        "end": {
          "line": 76,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 2012,
      "end": 2021,
      "loc": {
        "start": {
          "line": 78,
          "column": 4
        },
        "end": {
          "line": 78,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2021,
      "end": 2022,
      "loc": {
        "start": {
          "line": 78,
          "column": 13
        },
        "end": {
          "line": 78,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 2023,
      "end": 2031,
      "loc": {
        "start": {
          "line": 78,
          "column": 15
        },
        "end": {
          "line": 78,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2031,
      "end": 2032,
      "loc": {
        "start": {
          "line": 78,
          "column": 23
        },
        "end": {
          "line": 78,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2032,
      "end": 2037,
      "loc": {
        "start": {
          "line": 78,
          "column": 24
        },
        "end": {
          "line": 78,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2037,
      "end": 2038,
      "loc": {
        "start": {
          "line": 78,
          "column": 29
        },
        "end": {
          "line": 78,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 2039,
      "end": 2049,
      "loc": {
        "start": {
          "line": 78,
          "column": 31
        },
        "end": {
          "line": 78,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2050,
      "end": 2051,
      "loc": {
        "start": {
          "line": 78,
          "column": 42
        },
        "end": {
          "line": 78,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 2052,
      "end": 2054,
      "loc": {
        "start": {
          "line": 78,
          "column": 44
        },
        "end": {
          "line": 78,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2054,
      "end": 2055,
      "loc": {
        "start": {
          "line": 78,
          "column": 46
        },
        "end": {
          "line": 78,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2056,
      "end": 2057,
      "loc": {
        "start": {
          "line": 78,
          "column": 48
        },
        "end": {
          "line": 78,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2066,
      "end": 2068,
      "loc": {
        "start": {
          "line": 79,
          "column": 8
        },
        "end": {
          "line": 79,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2069,
      "end": 2070,
      "loc": {
        "start": {
          "line": 79,
          "column": 11
        },
        "end": {
          "line": 79,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2070,
      "end": 2074,
      "loc": {
        "start": {
          "line": 79,
          "column": 12
        },
        "end": {
          "line": 79,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2074,
      "end": 2075,
      "loc": {
        "start": {
          "line": 79,
          "column": 16
        },
        "end": {
          "line": 79,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 2075,
      "end": 2083,
      "loc": {
        "start": {
          "line": 79,
          "column": 17
        },
        "end": {
          "line": 79,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2083,
      "end": 2084,
      "loc": {
        "start": {
          "line": 79,
          "column": 25
        },
        "end": {
          "line": 79,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2084,
      "end": 2089,
      "loc": {
        "start": {
          "line": 79,
          "column": 26
        },
        "end": {
          "line": 79,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2089,
      "end": 2090,
      "loc": {
        "start": {
          "line": 79,
          "column": 31
        },
        "end": {
          "line": 79,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2090,
      "end": 2091,
      "loc": {
        "start": {
          "line": 79,
          "column": 32
        },
        "end": {
          "line": 79,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2092,
      "end": 2093,
      "loc": {
        "start": {
          "line": 79,
          "column": 34
        },
        "end": {
          "line": 79,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2106,
      "end": 2112,
      "loc": {
        "start": {
          "line": 80,
          "column": 12
        },
        "end": {
          "line": 80,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2113,
      "end": 2118,
      "loc": {
        "start": {
          "line": 80,
          "column": 19
        },
        "end": {
          "line": 80,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2118,
      "end": 2119,
      "loc": {
        "start": {
          "line": 80,
          "column": 24
        },
        "end": {
          "line": 80,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2128,
      "end": 2129,
      "loc": {
        "start": {
          "line": 81,
          "column": 8
        },
        "end": {
          "line": 81,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2138,
      "end": 2142,
      "loc": {
        "start": {
          "line": 82,
          "column": 8
        },
        "end": {
          "line": 82,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2142,
      "end": 2143,
      "loc": {
        "start": {
          "line": 82,
          "column": 12
        },
        "end": {
          "line": 82,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow53",
      "start": 2143,
      "end": 2156,
      "loc": {
        "start": {
          "line": 82,
          "column": 13
        },
        "end": {
          "line": 82,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2156,
      "end": 2157,
      "loc": {
        "start": {
          "line": 82,
          "column": 26
        },
        "end": {
          "line": 82,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2157,
      "end": 2162,
      "loc": {
        "start": {
          "line": 82,
          "column": 27
        },
        "end": {
          "line": 82,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2162,
      "end": 2163,
      "loc": {
        "start": {
          "line": 82,
          "column": 32
        },
        "end": {
          "line": 82,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 2164,
      "end": 2174,
      "loc": {
        "start": {
          "line": 82,
          "column": 34
        },
        "end": {
          "line": 82,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2174,
      "end": 2175,
      "loc": {
        "start": {
          "line": 82,
          "column": 44
        },
        "end": {
          "line": 82,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2175,
      "end": 2176,
      "loc": {
        "start": {
          "line": 82,
          "column": 45
        },
        "end": {
          "line": 82,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 2185,
      "end": 2188,
      "loc": {
        "start": {
          "line": 83,
          "column": 8
        },
        "end": {
          "line": 83,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "int_value",
      "start": 2189,
      "end": 2198,
      "loc": {
        "start": {
          "line": 83,
          "column": 12
        },
        "end": {
          "line": 83,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2199,
      "end": 2200,
      "loc": {
        "start": {
          "line": 83,
          "column": 22
        },
        "end": {
          "line": 83,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2201,
      "end": 2202,
      "loc": {
        "start": {
          "line": 83,
          "column": 24
        },
        "end": {
          "line": 83,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2202,
      "end": 2203,
      "loc": {
        "start": {
          "line": 83,
          "column": 25
        },
        "end": {
          "line": 83,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2203,
      "end": 2204,
      "loc": {
        "start": {
          "line": 83,
          "column": 26
        },
        "end": {
          "line": 83,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2205,
      "end": 2207,
      "loc": {
        "start": {
          "line": 83,
          "column": 28
        },
        "end": {
          "line": 83,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2208,
      "end": 2209,
      "loc": {
        "start": {
          "line": 83,
          "column": 31
        },
        "end": {
          "line": 83,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2222,
      "end": 2224,
      "loc": {
        "start": {
          "line": 84,
          "column": 12
        },
        "end": {
          "line": 84,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2225,
      "end": 2226,
      "loc": {
        "start": {
          "line": 84,
          "column": 15
        },
        "end": {
          "line": 84,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 2226,
      "end": 2232,
      "loc": {
        "start": {
          "line": 84,
          "column": 16
        },
        "end": {
          "line": 84,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2233,
      "end": 2238,
      "loc": {
        "start": {
          "line": 84,
          "column": 23
        },
        "end": {
          "line": 84,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2239,
      "end": 2242,
      "loc": {
        "start": {
          "line": 84,
          "column": 29
        },
        "end": {
          "line": 84,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 2243,
      "end": 2251,
      "loc": {
        "start": {
          "line": 84,
          "column": 33
        },
        "end": {
          "line": 84,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2251,
      "end": 2252,
      "loc": {
        "start": {
          "line": 84,
          "column": 41
        },
        "end": {
          "line": 84,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2253,
      "end": 2254,
      "loc": {
        "start": {
          "line": 84,
          "column": 43
        },
        "end": {
          "line": 84,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2271,
      "end": 2277,
      "loc": {
        "start": {
          "line": 85,
          "column": 16
        },
        "end": {
          "line": 85,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2278,
      "end": 2283,
      "loc": {
        "start": {
          "line": 85,
          "column": 23
        },
        "end": {
          "line": 85,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2283,
      "end": 2284,
      "loc": {
        "start": {
          "line": 85,
          "column": 28
        },
        "end": {
          "line": 85,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2297,
      "end": 2298,
      "loc": {
        "start": {
          "line": 86,
          "column": 12
        },
        "end": {
          "line": 86,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 2299,
      "end": 2303,
      "loc": {
        "start": {
          "line": 86,
          "column": 14
        },
        "end": {
          "line": 86,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2304,
      "end": 2305,
      "loc": {
        "start": {
          "line": 86,
          "column": 19
        },
        "end": {
          "line": 86,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2322,
      "end": 2328,
      "loc": {
        "start": {
          "line": 87,
          "column": 16
        },
        "end": {
          "line": 87,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parseInt",
      "start": 2329,
      "end": 2337,
      "loc": {
        "start": {
          "line": 87,
          "column": 23
        },
        "end": {
          "line": 87,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2337,
      "end": 2338,
      "loc": {
        "start": {
          "line": 87,
          "column": 31
        },
        "end": {
          "line": 87,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2338,
      "end": 2343,
      "loc": {
        "start": {
          "line": 87,
          "column": 32
        },
        "end": {
          "line": 87,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2343,
      "end": 2344,
      "loc": {
        "start": {
          "line": 87,
          "column": 37
        },
        "end": {
          "line": 87,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2344,
      "end": 2345,
      "loc": {
        "start": {
          "line": 87,
          "column": 38
        },
        "end": {
          "line": 87,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2358,
      "end": 2359,
      "loc": {
        "start": {
          "line": 88,
          "column": 12
        },
        "end": {
          "line": 88,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2368,
      "end": 2369,
      "loc": {
        "start": {
          "line": 89,
          "column": 8
        },
        "end": {
          "line": 89,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2369,
      "end": 2370,
      "loc": {
        "start": {
          "line": 89,
          "column": 9
        },
        "end": {
          "line": 89,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2370,
      "end": 2371,
      "loc": {
        "start": {
          "line": 89,
          "column": 10
        },
        "end": {
          "line": 89,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2371,
      "end": 2372,
      "loc": {
        "start": {
          "line": 89,
          "column": 11
        },
        "end": {
          "line": 89,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2372,
      "end": 2373,
      "loc": {
        "start": {
          "line": 89,
          "column": 12
        },
        "end": {
          "line": 89,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2382,
      "end": 2388,
      "loc": {
        "start": {
          "line": 90,
          "column": 8
        },
        "end": {
          "line": 90,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "int_value",
      "start": 2389,
      "end": 2398,
      "loc": {
        "start": {
          "line": 90,
          "column": 15
        },
        "end": {
          "line": 90,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2398,
      "end": 2399,
      "loc": {
        "start": {
          "line": 90,
          "column": 24
        },
        "end": {
          "line": 90,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2404,
      "end": 2405,
      "loc": {
        "start": {
          "line": 91,
          "column": 4
        },
        "end": {
          "line": 91,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2405,
      "end": 2406,
      "loc": {
        "start": {
          "line": 91,
          "column": 5
        },
        "end": {
          "line": 91,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_long",
      "start": 2412,
      "end": 2419,
      "loc": {
        "start": {
          "line": 93,
          "column": 4
        },
        "end": {
          "line": 93,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2419,
      "end": 2420,
      "loc": {
        "start": {
          "line": 93,
          "column": 11
        },
        "end": {
          "line": 93,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2420,
      "end": 2425,
      "loc": {
        "start": {
          "line": 93,
          "column": 12
        },
        "end": {
          "line": 93,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2425,
      "end": 2426,
      "loc": {
        "start": {
          "line": 93,
          "column": 17
        },
        "end": {
          "line": 93,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 2427,
      "end": 2437,
      "loc": {
        "start": {
          "line": 93,
          "column": 19
        },
        "end": {
          "line": 93,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2438,
      "end": 2439,
      "loc": {
        "start": {
          "line": 93,
          "column": 30
        },
        "end": {
          "line": 93,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 2440,
      "end": 2442,
      "loc": {
        "start": {
          "line": 93,
          "column": 32
        },
        "end": {
          "line": 93,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2442,
      "end": 2443,
      "loc": {
        "start": {
          "line": 93,
          "column": 34
        },
        "end": {
          "line": 93,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 2444,
      "end": 2452,
      "loc": {
        "start": {
          "line": 93,
          "column": 36
        },
        "end": {
          "line": 93,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2453,
      "end": 2454,
      "loc": {
        "start": {
          "line": 93,
          "column": 45
        },
        "end": {
          "line": 93,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 2455,
      "end": 2460,
      "loc": {
        "start": {
          "line": 93,
          "column": 47
        },
        "end": {
          "line": 93,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2460,
      "end": 2461,
      "loc": {
        "start": {
          "line": 93,
          "column": 52
        },
        "end": {
          "line": 93,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2462,
      "end": 2463,
      "loc": {
        "start": {
          "line": 93,
          "column": 54
        },
        "end": {
          "line": 93,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2472,
      "end": 2474,
      "loc": {
        "start": {
          "line": 94,
          "column": 8
        },
        "end": {
          "line": 94,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2475,
      "end": 2476,
      "loc": {
        "start": {
          "line": 94,
          "column": 11
        },
        "end": {
          "line": 94,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2476,
      "end": 2480,
      "loc": {
        "start": {
          "line": 94,
          "column": 12
        },
        "end": {
          "line": 94,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2480,
      "end": 2481,
      "loc": {
        "start": {
          "line": 94,
          "column": 16
        },
        "end": {
          "line": 94,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 2481,
      "end": 2489,
      "loc": {
        "start": {
          "line": 94,
          "column": 17
        },
        "end": {
          "line": 94,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2489,
      "end": 2490,
      "loc": {
        "start": {
          "line": 94,
          "column": 25
        },
        "end": {
          "line": 94,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2490,
      "end": 2495,
      "loc": {
        "start": {
          "line": 94,
          "column": 26
        },
        "end": {
          "line": 94,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2495,
      "end": 2496,
      "loc": {
        "start": {
          "line": 94,
          "column": 31
        },
        "end": {
          "line": 94,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2496,
      "end": 2497,
      "loc": {
        "start": {
          "line": 94,
          "column": 32
        },
        "end": {
          "line": 94,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2498,
      "end": 2499,
      "loc": {
        "start": {
          "line": 94,
          "column": 34
        },
        "end": {
          "line": 94,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2512,
      "end": 2518,
      "loc": {
        "start": {
          "line": 95,
          "column": 12
        },
        "end": {
          "line": 95,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2519,
      "end": 2524,
      "loc": {
        "start": {
          "line": 95,
          "column": 19
        },
        "end": {
          "line": 95,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2524,
      "end": 2525,
      "loc": {
        "start": {
          "line": 95,
          "column": 24
        },
        "end": {
          "line": 95,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2534,
      "end": 2535,
      "loc": {
        "start": {
          "line": 96,
          "column": 8
        },
        "end": {
          "line": 96,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2544,
      "end": 2546,
      "loc": {
        "start": {
          "line": 97,
          "column": 8
        },
        "end": {
          "line": 97,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2547,
      "end": 2548,
      "loc": {
        "start": {
          "line": 97,
          "column": 11
        },
        "end": {
          "line": 97,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 2548,
      "end": 2552,
      "loc": {
        "start": {
          "line": 97,
          "column": 12
        },
        "end": {
          "line": 97,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2552,
      "end": 2553,
      "loc": {
        "start": {
          "line": 97,
          "column": 16
        },
        "end": {
          "line": 97,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isLong",
      "start": 2553,
      "end": 2559,
      "loc": {
        "start": {
          "line": 97,
          "column": 17
        },
        "end": {
          "line": 97,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2559,
      "end": 2560,
      "loc": {
        "start": {
          "line": 97,
          "column": 23
        },
        "end": {
          "line": 97,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2560,
      "end": 2565,
      "loc": {
        "start": {
          "line": 97,
          "column": 24
        },
        "end": {
          "line": 97,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2565,
      "end": 2566,
      "loc": {
        "start": {
          "line": 97,
          "column": 29
        },
        "end": {
          "line": 97,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2566,
      "end": 2567,
      "loc": {
        "start": {
          "line": 97,
          "column": 30
        },
        "end": {
          "line": 97,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2568,
      "end": 2569,
      "loc": {
        "start": {
          "line": 97,
          "column": 32
        },
        "end": {
          "line": 97,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2582,
      "end": 2588,
      "loc": {
        "start": {
          "line": 98,
          "column": 12
        },
        "end": {
          "line": 98,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2589,
      "end": 2594,
      "loc": {
        "start": {
          "line": 98,
          "column": 19
        },
        "end": {
          "line": 98,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2594,
      "end": 2595,
      "loc": {
        "start": {
          "line": 98,
          "column": 24
        },
        "end": {
          "line": 98,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2604,
      "end": 2605,
      "loc": {
        "start": {
          "line": 99,
          "column": 8
        },
        "end": {
          "line": 99,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2615,
      "end": 2619,
      "loc": {
        "start": {
          "line": 101,
          "column": 8
        },
        "end": {
          "line": 101,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2619,
      "end": 2620,
      "loc": {
        "start": {
          "line": 101,
          "column": 12
        },
        "end": {
          "line": 101,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow64",
      "start": 2620,
      "end": 2633,
      "loc": {
        "start": {
          "line": 101,
          "column": 13
        },
        "end": {
          "line": 101,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2633,
      "end": 2634,
      "loc": {
        "start": {
          "line": 101,
          "column": 26
        },
        "end": {
          "line": 101,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2634,
      "end": 2639,
      "loc": {
        "start": {
          "line": 101,
          "column": 27
        },
        "end": {
          "line": 101,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2639,
      "end": 2640,
      "loc": {
        "start": {
          "line": 101,
          "column": 32
        },
        "end": {
          "line": 101,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 2641,
      "end": 2651,
      "loc": {
        "start": {
          "line": 101,
          "column": 34
        },
        "end": {
          "line": 101,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2651,
      "end": 2652,
      "loc": {
        "start": {
          "line": 101,
          "column": 44
        },
        "end": {
          "line": 101,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 2653,
      "end": 2661,
      "loc": {
        "start": {
          "line": 101,
          "column": 46
        },
        "end": {
          "line": 101,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2661,
      "end": 2662,
      "loc": {
        "start": {
          "line": 101,
          "column": 54
        },
        "end": {
          "line": 101,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2662,
      "end": 2663,
      "loc": {
        "start": {
          "line": 101,
          "column": 55
        },
        "end": {
          "line": 101,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2672,
      "end": 2674,
      "loc": {
        "start": {
          "line": 102,
          "column": 8
        },
        "end": {
          "line": 102,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2675,
      "end": 2676,
      "loc": {
        "start": {
          "line": 102,
          "column": 11
        },
        "end": {
          "line": 102,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 2676,
      "end": 2682,
      "loc": {
        "start": {
          "line": 102,
          "column": 12
        },
        "end": {
          "line": 102,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2683,
      "end": 2688,
      "loc": {
        "start": {
          "line": 102,
          "column": 19
        },
        "end": {
          "line": 102,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2689,
      "end": 2692,
      "loc": {
        "start": {
          "line": 102,
          "column": 25
        },
        "end": {
          "line": 102,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 2693,
      "end": 2701,
      "loc": {
        "start": {
          "line": 102,
          "column": 29
        },
        "end": {
          "line": 102,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2701,
      "end": 2702,
      "loc": {
        "start": {
          "line": 102,
          "column": 37
        },
        "end": {
          "line": 102,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2703,
      "end": 2704,
      "loc": {
        "start": {
          "line": 102,
          "column": 39
        },
        "end": {
          "line": 102,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2717,
      "end": 2722,
      "loc": {
        "start": {
          "line": 103,
          "column": 12
        },
        "end": {
          "line": 103,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2723,
      "end": 2724,
      "loc": {
        "start": {
          "line": 103,
          "column": 18
        },
        "end": {
          "line": 103,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 2725,
      "end": 2727,
      "loc": {
        "start": {
          "line": 103,
          "column": 20
        },
        "end": {
          "line": 103,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 2728,
      "end": 2729,
      "loc": {
        "start": {
          "line": 103,
          "column": 23
        },
        "end": {
          "line": 103,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2730,
      "end": 2735,
      "loc": {
        "start": {
          "line": 103,
          "column": 25
        },
        "end": {
          "line": 103,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2735,
      "end": 2736,
      "loc": {
        "start": {
          "line": 103,
          "column": 30
        },
        "end": {
          "line": 103,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2745,
      "end": 2746,
      "loc": {
        "start": {
          "line": 104,
          "column": 8
        },
        "end": {
          "line": 104,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2755,
      "end": 2761,
      "loc": {
        "start": {
          "line": 105,
          "column": 8
        },
        "end": {
          "line": 105,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 2762,
      "end": 2766,
      "loc": {
        "start": {
          "line": 105,
          "column": 15
        },
        "end": {
          "line": 105,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2766,
      "end": 2767,
      "loc": {
        "start": {
          "line": 105,
          "column": 19
        },
        "end": {
          "line": 105,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fromString",
      "start": 2767,
      "end": 2777,
      "loc": {
        "start": {
          "line": 105,
          "column": 20
        },
        "end": {
          "line": 105,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2777,
      "end": 2778,
      "loc": {
        "start": {
          "line": 105,
          "column": 30
        },
        "end": {
          "line": 105,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2778,
      "end": 2783,
      "loc": {
        "start": {
          "line": 105,
          "column": 31
        },
        "end": {
          "line": 105,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2783,
      "end": 2784,
      "loc": {
        "start": {
          "line": 105,
          "column": 36
        },
        "end": {
          "line": 105,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 2785,
      "end": 2793,
      "loc": {
        "start": {
          "line": 105,
          "column": 38
        },
        "end": {
          "line": 105,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2793,
      "end": 2794,
      "loc": {
        "start": {
          "line": 105,
          "column": 46
        },
        "end": {
          "line": 105,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2794,
      "end": 2795,
      "loc": {
        "start": {
          "line": 105,
          "column": 47
        },
        "end": {
          "line": 105,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2800,
      "end": 2801,
      "loc": {
        "start": {
          "line": 106,
          "column": 4
        },
        "end": {
          "line": 106,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2801,
      "end": 2802,
      "loc": {
        "start": {
          "line": 106,
          "column": 5
        },
        "end": {
          "line": 106,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_string",
      "start": 2808,
      "end": 2817,
      "loc": {
        "start": {
          "line": 108,
          "column": 4
        },
        "end": {
          "line": 108,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2817,
      "end": 2818,
      "loc": {
        "start": {
          "line": 108,
          "column": 13
        },
        "end": {
          "line": 108,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2818,
      "end": 2823,
      "loc": {
        "start": {
          "line": 108,
          "column": 14
        },
        "end": {
          "line": 108,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2823,
      "end": 2824,
      "loc": {
        "start": {
          "line": 108,
          "column": 19
        },
        "end": {
          "line": 108,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 2825,
      "end": 2835,
      "loc": {
        "start": {
          "line": 108,
          "column": 21
        },
        "end": {
          "line": 108,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2836,
      "end": 2837,
      "loc": {
        "start": {
          "line": 108,
          "column": 32
        },
        "end": {
          "line": 108,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 2838,
      "end": 2840,
      "loc": {
        "start": {
          "line": 108,
          "column": 34
        },
        "end": {
          "line": 108,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2840,
      "end": 2841,
      "loc": {
        "start": {
          "line": 108,
          "column": 36
        },
        "end": {
          "line": 108,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2842,
      "end": 2843,
      "loc": {
        "start": {
          "line": 108,
          "column": 38
        },
        "end": {
          "line": 108,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2852,
      "end": 2854,
      "loc": {
        "start": {
          "line": 109,
          "column": 8
        },
        "end": {
          "line": 109,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2855,
      "end": 2856,
      "loc": {
        "start": {
          "line": 109,
          "column": 11
        },
        "end": {
          "line": 109,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2856,
      "end": 2860,
      "loc": {
        "start": {
          "line": 109,
          "column": 12
        },
        "end": {
          "line": 109,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2860,
      "end": 2861,
      "loc": {
        "start": {
          "line": 109,
          "column": 16
        },
        "end": {
          "line": 109,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 2861,
      "end": 2869,
      "loc": {
        "start": {
          "line": 109,
          "column": 17
        },
        "end": {
          "line": 109,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2869,
      "end": 2870,
      "loc": {
        "start": {
          "line": 109,
          "column": 25
        },
        "end": {
          "line": 109,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2870,
      "end": 2875,
      "loc": {
        "start": {
          "line": 109,
          "column": 26
        },
        "end": {
          "line": 109,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2875,
      "end": 2876,
      "loc": {
        "start": {
          "line": 109,
          "column": 31
        },
        "end": {
          "line": 109,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2876,
      "end": 2877,
      "loc": {
        "start": {
          "line": 109,
          "column": 32
        },
        "end": {
          "line": 109,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2878,
      "end": 2879,
      "loc": {
        "start": {
          "line": 109,
          "column": 34
        },
        "end": {
          "line": 109,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2892,
      "end": 2898,
      "loc": {
        "start": {
          "line": 110,
          "column": 12
        },
        "end": {
          "line": 110,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2899,
      "end": 2904,
      "loc": {
        "start": {
          "line": 110,
          "column": 19
        },
        "end": {
          "line": 110,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2904,
      "end": 2905,
      "loc": {
        "start": {
          "line": 110,
          "column": 24
        },
        "end": {
          "line": 110,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2914,
      "end": 2915,
      "loc": {
        "start": {
          "line": 111,
          "column": 8
        },
        "end": {
          "line": 111,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2924,
      "end": 2926,
      "loc": {
        "start": {
          "line": 112,
          "column": 8
        },
        "end": {
          "line": 112,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2927,
      "end": 2928,
      "loc": {
        "start": {
          "line": 112,
          "column": 11
        },
        "end": {
          "line": 112,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 2928,
      "end": 2934,
      "loc": {
        "start": {
          "line": 112,
          "column": 12
        },
        "end": {
          "line": 112,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2935,
      "end": 2940,
      "loc": {
        "start": {
          "line": 112,
          "column": 19
        },
        "end": {
          "line": 112,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2941,
      "end": 2944,
      "loc": {
        "start": {
          "line": 112,
          "column": 25
        },
        "end": {
          "line": 112,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string",
      "start": 2945,
      "end": 2953,
      "loc": {
        "start": {
          "line": 112,
          "column": 29
        },
        "end": {
          "line": 112,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2953,
      "end": 2954,
      "loc": {
        "start": {
          "line": 112,
          "column": 37
        },
        "end": {
          "line": 112,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2955,
      "end": 2956,
      "loc": {
        "start": {
          "line": 112,
          "column": 39
        },
        "end": {
          "line": 112,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2969,
      "end": 2975,
      "loc": {
        "start": {
          "line": 113,
          "column": 12
        },
        "end": {
          "line": 113,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 2976,
      "end": 2981,
      "loc": {
        "start": {
          "line": 113,
          "column": 19
        },
        "end": {
          "line": 113,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2981,
      "end": 2982,
      "loc": {
        "start": {
          "line": 113,
          "column": 24
        },
        "end": {
          "line": 113,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2991,
      "end": 2992,
      "loc": {
        "start": {
          "line": 114,
          "column": 8
        },
        "end": {
          "line": 114,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3001,
      "end": 3003,
      "loc": {
        "start": {
          "line": 115,
          "column": 8
        },
        "end": {
          "line": 115,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3004,
      "end": 3005,
      "loc": {
        "start": {
          "line": 115,
          "column": 11
        },
        "end": {
          "line": 115,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 3005,
      "end": 3011,
      "loc": {
        "start": {
          "line": 115,
          "column": 12
        },
        "end": {
          "line": 115,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3012,
      "end": 3017,
      "loc": {
        "start": {
          "line": 115,
          "column": 19
        },
        "end": {
          "line": 115,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 3018,
      "end": 3021,
      "loc": {
        "start": {
          "line": 115,
          "column": 25
        },
        "end": {
          "line": 115,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 3022,
      "end": 3030,
      "loc": {
        "start": {
          "line": 115,
          "column": 29
        },
        "end": {
          "line": 115,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3030,
      "end": 3031,
      "loc": {
        "start": {
          "line": 115,
          "column": 37
        },
        "end": {
          "line": 115,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3032,
      "end": 3033,
      "loc": {
        "start": {
          "line": 115,
          "column": 39
        },
        "end": {
          "line": 115,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3046,
      "end": 3050,
      "loc": {
        "start": {
          "line": 116,
          "column": 12
        },
        "end": {
          "line": 116,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3050,
      "end": 3051,
      "loc": {
        "start": {
          "line": 116,
          "column": 16
        },
        "end": {
          "line": 116,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow53",
      "start": 3051,
      "end": 3064,
      "loc": {
        "start": {
          "line": 116,
          "column": 17
        },
        "end": {
          "line": 116,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3064,
      "end": 3065,
      "loc": {
        "start": {
          "line": 116,
          "column": 30
        },
        "end": {
          "line": 116,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3065,
      "end": 3070,
      "loc": {
        "start": {
          "line": 116,
          "column": 31
        },
        "end": {
          "line": 116,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3070,
      "end": 3071,
      "loc": {
        "start": {
          "line": 116,
          "column": 36
        },
        "end": {
          "line": 116,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3072,
      "end": 3082,
      "loc": {
        "start": {
          "line": 116,
          "column": 38
        },
        "end": {
          "line": 116,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3082,
      "end": 3083,
      "loc": {
        "start": {
          "line": 116,
          "column": 48
        },
        "end": {
          "line": 116,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3083,
      "end": 3084,
      "loc": {
        "start": {
          "line": 116,
          "column": 49
        },
        "end": {
          "line": 116,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3097,
      "end": 3103,
      "loc": {
        "start": {
          "line": 117,
          "column": 12
        },
        "end": {
          "line": 117,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3104,
      "end": 3106,
      "loc": {
        "start": {
          "line": 117,
          "column": 19
        },
        "end": {
          "line": 117,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 3107,
      "end": 3108,
      "loc": {
        "start": {
          "line": 117,
          "column": 22
        },
        "end": {
          "line": 117,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3109,
      "end": 3114,
      "loc": {
        "start": {
          "line": 117,
          "column": 24
        },
        "end": {
          "line": 117,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3114,
      "end": 3115,
      "loc": {
        "start": {
          "line": 117,
          "column": 29
        },
        "end": {
          "line": 117,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3124,
      "end": 3125,
      "loc": {
        "start": {
          "line": 118,
          "column": 8
        },
        "end": {
          "line": 118,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3134,
      "end": 3136,
      "loc": {
        "start": {
          "line": 119,
          "column": 8
        },
        "end": {
          "line": 119,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3137,
      "end": 3138,
      "loc": {
        "start": {
          "line": 119,
          "column": 11
        },
        "end": {
          "line": 119,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 3138,
      "end": 3142,
      "loc": {
        "start": {
          "line": 119,
          "column": 12
        },
        "end": {
          "line": 119,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3142,
      "end": 3143,
      "loc": {
        "start": {
          "line": 119,
          "column": 16
        },
        "end": {
          "line": 119,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isLong",
      "start": 3143,
      "end": 3149,
      "loc": {
        "start": {
          "line": 119,
          "column": 17
        },
        "end": {
          "line": 119,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3149,
      "end": 3150,
      "loc": {
        "start": {
          "line": 119,
          "column": 23
        },
        "end": {
          "line": 119,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3150,
      "end": 3155,
      "loc": {
        "start": {
          "line": 119,
          "column": 24
        },
        "end": {
          "line": 119,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3155,
      "end": 3156,
      "loc": {
        "start": {
          "line": 119,
          "column": 29
        },
        "end": {
          "line": 119,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3156,
      "end": 3157,
      "loc": {
        "start": {
          "line": 119,
          "column": 30
        },
        "end": {
          "line": 119,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3158,
      "end": 3159,
      "loc": {
        "start": {
          "line": 119,
          "column": 32
        },
        "end": {
          "line": 119,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3172,
      "end": 3178,
      "loc": {
        "start": {
          "line": 120,
          "column": 12
        },
        "end": {
          "line": 120,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3179,
      "end": 3184,
      "loc": {
        "start": {
          "line": 120,
          "column": 19
        },
        "end": {
          "line": 120,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3184,
      "end": 3185,
      "loc": {
        "start": {
          "line": 120,
          "column": 24
        },
        "end": {
          "line": 120,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 3185,
      "end": 3193,
      "loc": {
        "start": {
          "line": 120,
          "column": 25
        },
        "end": {
          "line": 120,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3193,
      "end": 3194,
      "loc": {
        "start": {
          "line": 120,
          "column": 33
        },
        "end": {
          "line": 120,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3194,
      "end": 3195,
      "loc": {
        "start": {
          "line": 120,
          "column": 34
        },
        "end": {
          "line": 120,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3195,
      "end": 3196,
      "loc": {
        "start": {
          "line": 120,
          "column": 35
        },
        "end": {
          "line": 120,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3205,
      "end": 3206,
      "loc": {
        "start": {
          "line": 121,
          "column": 8
        },
        "end": {
          "line": 121,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 3215,
      "end": 3220,
      "loc": {
        "start": {
          "line": 122,
          "column": 8
        },
        "end": {
          "line": 122,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3221,
      "end": 3222,
      "loc": {
        "start": {
          "line": 122,
          "column": 14
        },
        "end": {
          "line": 122,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unsupported type ",
      "start": 3222,
      "end": 3239,
      "loc": {
        "start": {
          "line": 122,
          "column": 15
        },
        "end": {
          "line": 122,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3239,
      "end": 3241,
      "loc": {
        "start": {
          "line": 122,
          "column": 32
        },
        "end": {
          "line": 122,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3241,
      "end": 3251,
      "loc": {
        "start": {
          "line": 122,
          "column": 34
        },
        "end": {
          "line": 122,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3251,
      "end": 3252,
      "loc": {
        "start": {
          "line": 122,
          "column": 44
        },
        "end": {
          "line": 122,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ": (",
      "start": 3252,
      "end": 3255,
      "loc": {
        "start": {
          "line": 122,
          "column": 45
        },
        "end": {
          "line": 122,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3255,
      "end": 3257,
      "loc": {
        "start": {
          "line": 122,
          "column": 48
        },
        "end": {
          "line": 122,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 3257,
      "end": 3263,
      "loc": {
        "start": {
          "line": 122,
          "column": 50
        },
        "end": {
          "line": 122,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3264,
      "end": 3269,
      "loc": {
        "start": {
          "line": 122,
          "column": 57
        },
        "end": {
          "line": 122,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3269,
      "end": 3270,
      "loc": {
        "start": {
          "line": 122,
          "column": 62
        },
        "end": {
          "line": 122,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ") ",
      "start": 3270,
      "end": 3272,
      "loc": {
        "start": {
          "line": 122,
          "column": 63
        },
        "end": {
          "line": 122,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3272,
      "end": 3274,
      "loc": {
        "start": {
          "line": 122,
          "column": 65
        },
        "end": {
          "line": 122,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3274,
      "end": 3279,
      "loc": {
        "start": {
          "line": 122,
          "column": 67
        },
        "end": {
          "line": 122,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3279,
      "end": 3280,
      "loc": {
        "start": {
          "line": 122,
          "column": 72
        },
        "end": {
          "line": 122,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3280,
      "end": 3280,
      "loc": {
        "start": {
          "line": 122,
          "column": 73
        },
        "end": {
          "line": 122,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3280,
      "end": 3281,
      "loc": {
        "start": {
          "line": 122,
          "column": 73
        },
        "end": {
          "line": 122,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3281,
      "end": 3282,
      "loc": {
        "start": {
          "line": 122,
          "column": 74
        },
        "end": {
          "line": 122,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3287,
      "end": 3288,
      "loc": {
        "start": {
          "line": 123,
          "column": 4
        },
        "end": {
          "line": 123,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3288,
      "end": 3289,
      "loc": {
        "start": {
          "line": 123,
          "column": 5
        },
        "end": {
          "line": 123,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_test",
      "start": 3295,
      "end": 3307,
      "loc": {
        "start": {
          "line": 125,
          "column": 4
        },
        "end": {
          "line": 125,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3307,
      "end": 3308,
      "loc": {
        "start": {
          "line": 125,
          "column": 16
        },
        "end": {
          "line": 125,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3308,
      "end": 3313,
      "loc": {
        "start": {
          "line": 125,
          "column": 17
        },
        "end": {
          "line": 125,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3313,
      "end": 3314,
      "loc": {
        "start": {
          "line": 125,
          "column": 22
        },
        "end": {
          "line": 125,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3315,
      "end": 3320,
      "loc": {
        "start": {
          "line": 125,
          "column": 24
        },
        "end": {
          "line": 125,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3320,
      "end": 3321,
      "loc": {
        "start": {
          "line": 125,
          "column": 29
        },
        "end": {
          "line": 125,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3322,
      "end": 3332,
      "loc": {
        "start": {
          "line": 125,
          "column": 31
        },
        "end": {
          "line": 125,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3333,
      "end": 3334,
      "loc": {
        "start": {
          "line": 125,
          "column": 42
        },
        "end": {
          "line": 125,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3335,
      "end": 3337,
      "loc": {
        "start": {
          "line": 125,
          "column": 44
        },
        "end": {
          "line": 125,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3337,
      "end": 3338,
      "loc": {
        "start": {
          "line": 125,
          "column": 46
        },
        "end": {
          "line": 125,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3339,
      "end": 3340,
      "loc": {
        "start": {
          "line": 125,
          "column": 48
        },
        "end": {
          "line": 125,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3349,
      "end": 3351,
      "loc": {
        "start": {
          "line": 126,
          "column": 8
        },
        "end": {
          "line": 126,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3352,
      "end": 3353,
      "loc": {
        "start": {
          "line": 126,
          "column": 11
        },
        "end": {
          "line": 126,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3353,
      "end": 3357,
      "loc": {
        "start": {
          "line": 126,
          "column": 12
        },
        "end": {
          "line": 126,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3357,
      "end": 3358,
      "loc": {
        "start": {
          "line": 126,
          "column": 16
        },
        "end": {
          "line": 126,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 3358,
      "end": 3366,
      "loc": {
        "start": {
          "line": 126,
          "column": 17
        },
        "end": {
          "line": 126,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3366,
      "end": 3367,
      "loc": {
        "start": {
          "line": 126,
          "column": 25
        },
        "end": {
          "line": 126,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3367,
      "end": 3372,
      "loc": {
        "start": {
          "line": 126,
          "column": 26
        },
        "end": {
          "line": 126,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3372,
      "end": 3373,
      "loc": {
        "start": {
          "line": 126,
          "column": 31
        },
        "end": {
          "line": 126,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3373,
      "end": 3374,
      "loc": {
        "start": {
          "line": 126,
          "column": 32
        },
        "end": {
          "line": 126,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3375,
      "end": 3376,
      "loc": {
        "start": {
          "line": 126,
          "column": 34
        },
        "end": {
          "line": 126,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3389,
      "end": 3395,
      "loc": {
        "start": {
          "line": 127,
          "column": 12
        },
        "end": {
          "line": 127,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3396,
      "end": 3401,
      "loc": {
        "start": {
          "line": 127,
          "column": 19
        },
        "end": {
          "line": 127,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3401,
      "end": 3402,
      "loc": {
        "start": {
          "line": 127,
          "column": 24
        },
        "end": {
          "line": 127,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3411,
      "end": 3412,
      "loc": {
        "start": {
          "line": 128,
          "column": 8
        },
        "end": {
          "line": 128,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3421,
      "end": 3423,
      "loc": {
        "start": {
          "line": 129,
          "column": 8
        },
        "end": {
          "line": 129,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3424,
      "end": 3425,
      "loc": {
        "start": {
          "line": 129,
          "column": 11
        },
        "end": {
          "line": 129,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 3425,
      "end": 3426,
      "loc": {
        "start": {
          "line": 129,
          "column": 12
        },
        "end": {
          "line": 129,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3426,
      "end": 3431,
      "loc": {
        "start": {
          "line": 129,
          "column": 13
        },
        "end": {
          "line": 129,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3431,
      "end": 3432,
      "loc": {
        "start": {
          "line": 129,
          "column": 18
        },
        "end": {
          "line": 129,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 3432,
      "end": 3436,
      "loc": {
        "start": {
          "line": 129,
          "column": 19
        },
        "end": {
          "line": 129,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3436,
      "end": 3437,
      "loc": {
        "start": {
          "line": 129,
          "column": 23
        },
        "end": {
          "line": 129,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3437,
      "end": 3442,
      "loc": {
        "start": {
          "line": 129,
          "column": 24
        },
        "end": {
          "line": 129,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3442,
      "end": 3443,
      "loc": {
        "start": {
          "line": 129,
          "column": 29
        },
        "end": {
          "line": 129,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3443,
      "end": 3444,
      "loc": {
        "start": {
          "line": 129,
          "column": 30
        },
        "end": {
          "line": 129,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3445,
      "end": 3446,
      "loc": {
        "start": {
          "line": 129,
          "column": 32
        },
        "end": {
          "line": 129,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 3459,
      "end": 3464,
      "loc": {
        "start": {
          "line": 130,
          "column": 12
        },
        "end": {
          "line": 130,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 3465,
      "end": 3468,
      "loc": {
        "start": {
          "line": 130,
          "column": 18
        },
        "end": {
          "line": 130,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 3469,
      "end": 3474,
      "loc": {
        "start": {
          "line": 130,
          "column": 22
        },
        "end": {
          "line": 130,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3474,
      "end": 3475,
      "loc": {
        "start": {
          "line": 130,
          "column": 27
        },
        "end": {
          "line": 130,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3475,
      "end": 3476,
      "loc": {
        "start": {
          "line": 130,
          "column": 28
        },
        "end": {
          "line": 130,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unmatched ",
      "start": 3476,
      "end": 3486,
      "loc": {
        "start": {
          "line": 130,
          "column": 29
        },
        "end": {
          "line": 130,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3486,
      "end": 3488,
      "loc": {
        "start": {
          "line": 130,
          "column": 39
        },
        "end": {
          "line": 130,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3488,
      "end": 3493,
      "loc": {
        "start": {
          "line": 130,
          "column": 41
        },
        "end": {
          "line": 130,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3493,
      "end": 3494,
      "loc": {
        "start": {
          "line": 130,
          "column": 46
        },
        "end": {
          "line": 130,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 3494,
      "end": 3495,
      "loc": {
        "start": {
          "line": 130,
          "column": 47
        },
        "end": {
          "line": 130,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3495,
      "end": 3497,
      "loc": {
        "start": {
          "line": 130,
          "column": 48
        },
        "end": {
          "line": 130,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3497,
      "end": 3507,
      "loc": {
        "start": {
          "line": 130,
          "column": 50
        },
        "end": {
          "line": 130,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3507,
      "end": 3508,
      "loc": {
        "start": {
          "line": 130,
          "column": 60
        },
        "end": {
          "line": 130,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 3508,
      "end": 3509,
      "loc": {
        "start": {
          "line": 130,
          "column": 61
        },
        "end": {
          "line": 130,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3509,
      "end": 3511,
      "loc": {
        "start": {
          "line": 130,
          "column": 62
        },
        "end": {
          "line": 130,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3511,
      "end": 3516,
      "loc": {
        "start": {
          "line": 130,
          "column": 64
        },
        "end": {
          "line": 130,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3516,
      "end": 3517,
      "loc": {
        "start": {
          "line": 130,
          "column": 69
        },
        "end": {
          "line": 130,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3517,
      "end": 3517,
      "loc": {
        "start": {
          "line": 130,
          "column": 70
        },
        "end": {
          "line": 130,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3517,
      "end": 3518,
      "loc": {
        "start": {
          "line": 130,
          "column": 70
        },
        "end": {
          "line": 130,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3518,
      "end": 3519,
      "loc": {
        "start": {
          "line": 130,
          "column": 71
        },
        "end": {
          "line": 130,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3519,
      "end": 3520,
      "loc": {
        "start": {
          "line": 130,
          "column": 72
        },
        "end": {
          "line": 130,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3529,
      "end": 3530,
      "loc": {
        "start": {
          "line": 131,
          "column": 8
        },
        "end": {
          "line": 131,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3539,
      "end": 3545,
      "loc": {
        "start": {
          "line": 132,
          "column": 8
        },
        "end": {
          "line": 132,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3546,
      "end": 3551,
      "loc": {
        "start": {
          "line": 132,
          "column": 15
        },
        "end": {
          "line": 132,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3551,
      "end": 3552,
      "loc": {
        "start": {
          "line": 132,
          "column": 20
        },
        "end": {
          "line": 132,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3557,
      "end": 3558,
      "loc": {
        "start": {
          "line": 133,
          "column": 4
        },
        "end": {
          "line": 133,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3558,
      "end": 3559,
      "loc": {
        "start": {
          "line": 133,
          "column": 5
        },
        "end": {
          "line": 133,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_match",
      "start": 3565,
      "end": 3578,
      "loc": {
        "start": {
          "line": 135,
          "column": 4
        },
        "end": {
          "line": 135,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3578,
      "end": 3579,
      "loc": {
        "start": {
          "line": 135,
          "column": 17
        },
        "end": {
          "line": 135,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 3580,
      "end": 3588,
      "loc": {
        "start": {
          "line": 135,
          "column": 19
        },
        "end": {
          "line": 135,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3588,
      "end": 3589,
      "loc": {
        "start": {
          "line": 135,
          "column": 27
        },
        "end": {
          "line": 135,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3589,
      "end": 3594,
      "loc": {
        "start": {
          "line": 135,
          "column": 28
        },
        "end": {
          "line": 135,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3594,
      "end": 3595,
      "loc": {
        "start": {
          "line": 135,
          "column": 33
        },
        "end": {
          "line": 135,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3596,
      "end": 3601,
      "loc": {
        "start": {
          "line": 135,
          "column": 35
        },
        "end": {
          "line": 135,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3601,
      "end": 3602,
      "loc": {
        "start": {
          "line": 135,
          "column": 40
        },
        "end": {
          "line": 135,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3603,
      "end": 3613,
      "loc": {
        "start": {
          "line": 135,
          "column": 42
        },
        "end": {
          "line": 135,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3614,
      "end": 3615,
      "loc": {
        "start": {
          "line": 135,
          "column": 53
        },
        "end": {
          "line": 135,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3616,
      "end": 3618,
      "loc": {
        "start": {
          "line": 135,
          "column": 55
        },
        "end": {
          "line": 135,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3618,
      "end": 3619,
      "loc": {
        "start": {
          "line": 135,
          "column": 57
        },
        "end": {
          "line": 135,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3620,
      "end": 3621,
      "loc": {
        "start": {
          "line": 135,
          "column": 59
        },
        "end": {
          "line": 135,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3630,
      "end": 3632,
      "loc": {
        "start": {
          "line": 136,
          "column": 8
        },
        "end": {
          "line": 136,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3633,
      "end": 3634,
      "loc": {
        "start": {
          "line": 136,
          "column": 11
        },
        "end": {
          "line": 136,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3634,
      "end": 3638,
      "loc": {
        "start": {
          "line": 136,
          "column": 12
        },
        "end": {
          "line": 136,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3638,
      "end": 3639,
      "loc": {
        "start": {
          "line": 136,
          "column": 16
        },
        "end": {
          "line": 136,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 3639,
      "end": 3647,
      "loc": {
        "start": {
          "line": 136,
          "column": 17
        },
        "end": {
          "line": 136,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3647,
      "end": 3648,
      "loc": {
        "start": {
          "line": 136,
          "column": 25
        },
        "end": {
          "line": 136,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3648,
      "end": 3653,
      "loc": {
        "start": {
          "line": 136,
          "column": 26
        },
        "end": {
          "line": 136,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3653,
      "end": 3654,
      "loc": {
        "start": {
          "line": 136,
          "column": 31
        },
        "end": {
          "line": 136,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3654,
      "end": 3655,
      "loc": {
        "start": {
          "line": 136,
          "column": 32
        },
        "end": {
          "line": 136,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3656,
      "end": 3657,
      "loc": {
        "start": {
          "line": 136,
          "column": 34
        },
        "end": {
          "line": 136,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3670,
      "end": 3676,
      "loc": {
        "start": {
          "line": 137,
          "column": 12
        },
        "end": {
          "line": 137,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3677,
      "end": 3682,
      "loc": {
        "start": {
          "line": 137,
          "column": 19
        },
        "end": {
          "line": 137,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3682,
      "end": 3683,
      "loc": {
        "start": {
          "line": 137,
          "column": 24
        },
        "end": {
          "line": 137,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3692,
      "end": 3693,
      "loc": {
        "start": {
          "line": 138,
          "column": 8
        },
        "end": {
          "line": 138,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 3702,
      "end": 3705,
      "loc": {
        "start": {
          "line": 139,
          "column": 8
        },
        "end": {
          "line": 139,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 3706,
      "end": 3711,
      "loc": {
        "start": {
          "line": 139,
          "column": 12
        },
        "end": {
          "line": 139,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3712,
      "end": 3713,
      "loc": {
        "start": {
          "line": 139,
          "column": 18
        },
        "end": {
          "line": 139,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3714,
      "end": 3719,
      "loc": {
        "start": {
          "line": 139,
          "column": 20
        },
        "end": {
          "line": 139,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3719,
      "end": 3720,
      "loc": {
        "start": {
          "line": 139,
          "column": 25
        },
        "end": {
          "line": 139,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 3720,
      "end": 3725,
      "loc": {
        "start": {
          "line": 139,
          "column": 26
        },
        "end": {
          "line": 139,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3725,
      "end": 3726,
      "loc": {
        "start": {
          "line": 139,
          "column": 31
        },
        "end": {
          "line": 139,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3726,
      "end": 3731,
      "loc": {
        "start": {
          "line": 139,
          "column": 32
        },
        "end": {
          "line": 139,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3731,
      "end": 3732,
      "loc": {
        "start": {
          "line": 139,
          "column": 37
        },
        "end": {
          "line": 139,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3732,
      "end": 3733,
      "loc": {
        "start": {
          "line": 139,
          "column": 38
        },
        "end": {
          "line": 139,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3742,
      "end": 3744,
      "loc": {
        "start": {
          "line": 140,
          "column": 8
        },
        "end": {
          "line": 140,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3745,
      "end": 3746,
      "loc": {
        "start": {
          "line": 140,
          "column": 11
        },
        "end": {
          "line": 140,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 3746,
      "end": 3751,
      "loc": {
        "start": {
          "line": 140,
          "column": 12
        },
        "end": {
          "line": 140,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 3752,
      "end": 3755,
      "loc": {
        "start": {
          "line": 140,
          "column": 18
        },
        "end": {
          "line": 140,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 3756,
      "end": 3760,
      "loc": {
        "start": {
          "line": 140,
          "column": 22
        },
        "end": {
          "line": 140,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3760,
      "end": 3761,
      "loc": {
        "start": {
          "line": 140,
          "column": 26
        },
        "end": {
          "line": 140,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3762,
      "end": 3763,
      "loc": {
        "start": {
          "line": 140,
          "column": 28
        },
        "end": {
          "line": 140,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 3776,
      "end": 3781,
      "loc": {
        "start": {
          "line": 141,
          "column": 12
        },
        "end": {
          "line": 141,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 3782,
      "end": 3785,
      "loc": {
        "start": {
          "line": 141,
          "column": 18
        },
        "end": {
          "line": 141,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 3786,
      "end": 3791,
      "loc": {
        "start": {
          "line": 141,
          "column": 22
        },
        "end": {
          "line": 141,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3791,
      "end": 3792,
      "loc": {
        "start": {
          "line": 141,
          "column": 27
        },
        "end": {
          "line": 141,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3792,
      "end": 3793,
      "loc": {
        "start": {
          "line": 141,
          "column": 28
        },
        "end": {
          "line": 141,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unmatched ",
      "start": 3793,
      "end": 3803,
      "loc": {
        "start": {
          "line": 141,
          "column": 29
        },
        "end": {
          "line": 141,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3803,
      "end": 3805,
      "loc": {
        "start": {
          "line": 141,
          "column": 39
        },
        "end": {
          "line": 141,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regex",
      "start": 3805,
      "end": 3810,
      "loc": {
        "start": {
          "line": 141,
          "column": 41
        },
        "end": {
          "line": 141,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3810,
      "end": 3811,
      "loc": {
        "start": {
          "line": 141,
          "column": 46
        },
        "end": {
          "line": 141,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 3811,
      "end": 3812,
      "loc": {
        "start": {
          "line": 141,
          "column": 47
        },
        "end": {
          "line": 141,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3812,
      "end": 3814,
      "loc": {
        "start": {
          "line": 141,
          "column": 48
        },
        "end": {
          "line": 141,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3814,
      "end": 3824,
      "loc": {
        "start": {
          "line": 141,
          "column": 50
        },
        "end": {
          "line": 141,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3824,
      "end": 3825,
      "loc": {
        "start": {
          "line": 141,
          "column": 60
        },
        "end": {
          "line": 141,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 3825,
      "end": 3826,
      "loc": {
        "start": {
          "line": 141,
          "column": 61
        },
        "end": {
          "line": 141,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3826,
      "end": 3828,
      "loc": {
        "start": {
          "line": 141,
          "column": 62
        },
        "end": {
          "line": 141,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3828,
      "end": 3833,
      "loc": {
        "start": {
          "line": 141,
          "column": 64
        },
        "end": {
          "line": 141,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3833,
      "end": 3834,
      "loc": {
        "start": {
          "line": 141,
          "column": 69
        },
        "end": {
          "line": 141,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3834,
      "end": 3834,
      "loc": {
        "start": {
          "line": 141,
          "column": 70
        },
        "end": {
          "line": 141,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3834,
      "end": 3835,
      "loc": {
        "start": {
          "line": 141,
          "column": 70
        },
        "end": {
          "line": 141,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3835,
      "end": 3836,
      "loc": {
        "start": {
          "line": 141,
          "column": 71
        },
        "end": {
          "line": 141,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3836,
      "end": 3837,
      "loc": {
        "start": {
          "line": 141,
          "column": 72
        },
        "end": {
          "line": 141,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3846,
      "end": 3847,
      "loc": {
        "start": {
          "line": 142,
          "column": 8
        },
        "end": {
          "line": 142,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3856,
      "end": 3862,
      "loc": {
        "start": {
          "line": 143,
          "column": 8
        },
        "end": {
          "line": 143,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 3863,
      "end": 3868,
      "loc": {
        "start": {
          "line": 143,
          "column": 15
        },
        "end": {
          "line": 143,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3868,
      "end": 3869,
      "loc": {
        "start": {
          "line": 143,
          "column": 20
        },
        "end": {
          "line": 143,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3874,
      "end": 3875,
      "loc": {
        "start": {
          "line": 144,
          "column": 4
        },
        "end": {
          "line": 144,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3875,
      "end": 3876,
      "loc": {
        "start": {
          "line": 144,
          "column": 5
        },
        "end": {
          "line": 144,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_id",
      "start": 3882,
      "end": 3899,
      "loc": {
        "start": {
          "line": 146,
          "column": 4
        },
        "end": {
          "line": 146,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3899,
      "end": 3900,
      "loc": {
        "start": {
          "line": 146,
          "column": 21
        },
        "end": {
          "line": 146,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 3901,
      "end": 3909,
      "loc": {
        "start": {
          "line": 146,
          "column": 23
        },
        "end": {
          "line": 146,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3909,
      "end": 3910,
      "loc": {
        "start": {
          "line": 146,
          "column": 31
        },
        "end": {
          "line": 146,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 3910,
      "end": 3915,
      "loc": {
        "start": {
          "line": 146,
          "column": 32
        },
        "end": {
          "line": 146,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3915,
      "end": 3916,
      "loc": {
        "start": {
          "line": 146,
          "column": 37
        },
        "end": {
          "line": 146,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 3917,
      "end": 3927,
      "loc": {
        "start": {
          "line": 146,
          "column": 39
        },
        "end": {
          "line": 146,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3927,
      "end": 3928,
      "loc": {
        "start": {
          "line": 146,
          "column": 49
        },
        "end": {
          "line": 146,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3929,
      "end": 3930,
      "loc": {
        "start": {
          "line": 146,
          "column": 51
        },
        "end": {
          "line": 146,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3939,
      "end": 3945,
      "loc": {
        "start": {
          "line": 147,
          "column": 8
        },
        "end": {
          "line": 147,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_match",
      "start": 3946,
      "end": 3959,
      "loc": {
        "start": {
          "line": 147,
          "column": 15
        },
        "end": {
          "line": 147,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3959,
      "end": 3960,
      "loc": {
        "start": {
          "line": 147,
          "column": 28
        },
        "end": {
          "line": 147,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$",
        "flags": ""
      },
      "start": 3973,
      "end": 4005,
      "loc": {
        "start": {
          "line": 148,
          "column": 12
        },
        "end": {
          "line": 148,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4005,
      "end": 4006,
      "loc": {
        "start": {
          "line": 148,
          "column": 44
        },
        "end": {
          "line": 148,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4019,
      "end": 4024,
      "loc": {
        "start": {
          "line": 149,
          "column": 12
        },
        "end": {
          "line": 149,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4024,
      "end": 4025,
      "loc": {
        "start": {
          "line": 149,
          "column": 17
        },
        "end": {
          "line": 149,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 4038,
      "end": 4048,
      "loc": {
        "start": {
          "line": 150,
          "column": 12
        },
        "end": {
          "line": 150,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4057,
      "end": 4058,
      "loc": {
        "start": {
          "line": 151,
          "column": 8
        },
        "end": {
          "line": 151,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4058,
      "end": 4059,
      "loc": {
        "start": {
          "line": 151,
          "column": 9
        },
        "end": {
          "line": 151,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4064,
      "end": 4065,
      "loc": {
        "start": {
          "line": 152,
          "column": 4
        },
        "end": {
          "line": 152,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4065,
      "end": 4066,
      "loc": {
        "start": {
          "line": 152,
          "column": 5
        },
        "end": {
          "line": 152,
          "column": 6
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Does not support over 53 bits",
      "start": 4072,
      "end": 4104,
      "loc": {
        "start": {
          "line": 154,
          "column": 4
        },
        "end": {
          "line": 154,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_range",
      "start": 4109,
      "end": 4122,
      "loc": {
        "start": {
          "line": 155,
          "column": 4
        },
        "end": {
          "line": 155,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4122,
      "end": 4123,
      "loc": {
        "start": {
          "line": 155,
          "column": 17
        },
        "end": {
          "line": 155,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "min",
      "start": 4123,
      "end": 4126,
      "loc": {
        "start": {
          "line": 155,
          "column": 18
        },
        "end": {
          "line": 155,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4126,
      "end": 4127,
      "loc": {
        "start": {
          "line": 155,
          "column": 21
        },
        "end": {
          "line": 155,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "max",
      "start": 4128,
      "end": 4131,
      "loc": {
        "start": {
          "line": 155,
          "column": 23
        },
        "end": {
          "line": 155,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4131,
      "end": 4132,
      "loc": {
        "start": {
          "line": 155,
          "column": 26
        },
        "end": {
          "line": 155,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4133,
      "end": 4138,
      "loc": {
        "start": {
          "line": 155,
          "column": 28
        },
        "end": {
          "line": 155,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4138,
      "end": 4139,
      "loc": {
        "start": {
          "line": 155,
          "column": 33
        },
        "end": {
          "line": 155,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 4140,
      "end": 4150,
      "loc": {
        "start": {
          "line": 155,
          "column": 35
        },
        "end": {
          "line": 155,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4151,
      "end": 4152,
      "loc": {
        "start": {
          "line": 155,
          "column": 46
        },
        "end": {
          "line": 155,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 4153,
      "end": 4155,
      "loc": {
        "start": {
          "line": 155,
          "column": 48
        },
        "end": {
          "line": 155,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4155,
      "end": 4156,
      "loc": {
        "start": {
          "line": 155,
          "column": 50
        },
        "end": {
          "line": 155,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4157,
      "end": 4158,
      "loc": {
        "start": {
          "line": 155,
          "column": 52
        },
        "end": {
          "line": 155,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4167,
      "end": 4169,
      "loc": {
        "start": {
          "line": 156,
          "column": 8
        },
        "end": {
          "line": 156,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4170,
      "end": 4171,
      "loc": {
        "start": {
          "line": 156,
          "column": 11
        },
        "end": {
          "line": 156,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4171,
      "end": 4175,
      "loc": {
        "start": {
          "line": 156,
          "column": 12
        },
        "end": {
          "line": 156,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4175,
      "end": 4176,
      "loc": {
        "start": {
          "line": 156,
          "column": 16
        },
        "end": {
          "line": 156,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 4176,
      "end": 4184,
      "loc": {
        "start": {
          "line": 156,
          "column": 17
        },
        "end": {
          "line": 156,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4184,
      "end": 4185,
      "loc": {
        "start": {
          "line": 156,
          "column": 25
        },
        "end": {
          "line": 156,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4185,
      "end": 4190,
      "loc": {
        "start": {
          "line": 156,
          "column": 26
        },
        "end": {
          "line": 156,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4190,
      "end": 4191,
      "loc": {
        "start": {
          "line": 156,
          "column": 31
        },
        "end": {
          "line": 156,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4191,
      "end": 4192,
      "loc": {
        "start": {
          "line": 156,
          "column": 32
        },
        "end": {
          "line": 156,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4193,
      "end": 4194,
      "loc": {
        "start": {
          "line": 156,
          "column": 34
        },
        "end": {
          "line": 156,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4207,
      "end": 4213,
      "loc": {
        "start": {
          "line": 157,
          "column": 12
        },
        "end": {
          "line": 157,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4214,
      "end": 4219,
      "loc": {
        "start": {
          "line": 157,
          "column": 19
        },
        "end": {
          "line": 157,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4219,
      "end": 4220,
      "loc": {
        "start": {
          "line": 157,
          "column": 24
        },
        "end": {
          "line": 157,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4229,
      "end": 4230,
      "loc": {
        "start": {
          "line": 158,
          "column": 8
        },
        "end": {
          "line": 158,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 4239,
      "end": 4242,
      "loc": {
        "start": {
          "line": 159,
          "column": 8
        },
        "end": {
          "line": 159,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "number",
      "start": 4243,
      "end": 4249,
      "loc": {
        "start": {
          "line": 159,
          "column": 12
        },
        "end": {
          "line": 159,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4250,
      "end": 4251,
      "loc": {
        "start": {
          "line": 159,
          "column": 19
        },
        "end": {
          "line": 159,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4252,
      "end": 4256,
      "loc": {
        "start": {
          "line": 159,
          "column": 21
        },
        "end": {
          "line": 159,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4256,
      "end": 4257,
      "loc": {
        "start": {
          "line": 159,
          "column": 25
        },
        "end": {
          "line": 159,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 4257,
      "end": 4266,
      "loc": {
        "start": {
          "line": 159,
          "column": 26
        },
        "end": {
          "line": 159,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4266,
      "end": 4267,
      "loc": {
        "start": {
          "line": 159,
          "column": 35
        },
        "end": {
          "line": 159,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4267,
      "end": 4272,
      "loc": {
        "start": {
          "line": 159,
          "column": 36
        },
        "end": {
          "line": 159,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4272,
      "end": 4273,
      "loc": {
        "start": {
          "line": 159,
          "column": 41
        },
        "end": {
          "line": 159,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4273,
      "end": 4274,
      "loc": {
        "start": {
          "line": 159,
          "column": 42
        },
        "end": {
          "line": 159,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4283,
      "end": 4285,
      "loc": {
        "start": {
          "line": 160,
          "column": 8
        },
        "end": {
          "line": 160,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4286,
      "end": 4287,
      "loc": {
        "start": {
          "line": 160,
          "column": 11
        },
        "end": {
          "line": 160,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4287,
      "end": 4292,
      "loc": {
        "start": {
          "line": 160,
          "column": 12
        },
        "end": {
          "line": 160,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 4293,
      "end": 4294,
      "loc": {
        "start": {
          "line": 160,
          "column": 18
        },
        "end": {
          "line": 160,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "min",
      "start": 4295,
      "end": 4298,
      "loc": {
        "start": {
          "line": 160,
          "column": 20
        },
        "end": {
          "line": 160,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 4299,
      "end": 4301,
      "loc": {
        "start": {
          "line": 160,
          "column": 24
        },
        "end": {
          "line": 160,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4302,
      "end": 4307,
      "loc": {
        "start": {
          "line": 160,
          "column": 27
        },
        "end": {
          "line": 160,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 4308,
      "end": 4309,
      "loc": {
        "start": {
          "line": 160,
          "column": 33
        },
        "end": {
          "line": 160,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "max",
      "start": 4310,
      "end": 4313,
      "loc": {
        "start": {
          "line": 160,
          "column": 35
        },
        "end": {
          "line": 160,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4313,
      "end": 4314,
      "loc": {
        "start": {
          "line": 160,
          "column": 38
        },
        "end": {
          "line": 160,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4315,
      "end": 4316,
      "loc": {
        "start": {
          "line": 160,
          "column": 40
        },
        "end": {
          "line": 160,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 4329,
      "end": 4334,
      "loc": {
        "start": {
          "line": 161,
          "column": 12
        },
        "end": {
          "line": 161,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 4335,
      "end": 4338,
      "loc": {
        "start": {
          "line": 161,
          "column": 18
        },
        "end": {
          "line": 161,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 4339,
      "end": 4344,
      "loc": {
        "start": {
          "line": 161,
          "column": 22
        },
        "end": {
          "line": 161,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4344,
      "end": 4345,
      "loc": {
        "start": {
          "line": 161,
          "column": 27
        },
        "end": {
          "line": 161,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4345,
      "end": 4346,
      "loc": {
        "start": {
          "line": 161,
          "column": 28
        },
        "end": {
          "line": 161,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "out of range ",
      "start": 4346,
      "end": 4359,
      "loc": {
        "start": {
          "line": 161,
          "column": 29
        },
        "end": {
          "line": 161,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4359,
      "end": 4361,
      "loc": {
        "start": {
          "line": 161,
          "column": 42
        },
        "end": {
          "line": 161,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4361,
      "end": 4366,
      "loc": {
        "start": {
          "line": 161,
          "column": 44
        },
        "end": {
          "line": 161,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4366,
      "end": 4367,
      "loc": {
        "start": {
          "line": 161,
          "column": 49
        },
        "end": {
          "line": 161,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 4367,
      "end": 4368,
      "loc": {
        "start": {
          "line": 161,
          "column": 50
        },
        "end": {
          "line": 161,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4368,
      "end": 4370,
      "loc": {
        "start": {
          "line": 161,
          "column": 51
        },
        "end": {
          "line": 161,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 4370,
      "end": 4380,
      "loc": {
        "start": {
          "line": 161,
          "column": 53
        },
        "end": {
          "line": 161,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4380,
      "end": 4381,
      "loc": {
        "start": {
          "line": 161,
          "column": 63
        },
        "end": {
          "line": 161,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 4381,
      "end": 4382,
      "loc": {
        "start": {
          "line": 161,
          "column": 64
        },
        "end": {
          "line": 161,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4382,
      "end": 4384,
      "loc": {
        "start": {
          "line": 161,
          "column": 65
        },
        "end": {
          "line": 161,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4384,
      "end": 4389,
      "loc": {
        "start": {
          "line": 161,
          "column": 67
        },
        "end": {
          "line": 161,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4389,
      "end": 4390,
      "loc": {
        "start": {
          "line": 161,
          "column": 72
        },
        "end": {
          "line": 161,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 4390,
      "end": 4390,
      "loc": {
        "start": {
          "line": 161,
          "column": 73
        },
        "end": {
          "line": 161,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4390,
      "end": 4391,
      "loc": {
        "start": {
          "line": 161,
          "column": 73
        },
        "end": {
          "line": 161,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4391,
      "end": 4392,
      "loc": {
        "start": {
          "line": 161,
          "column": 74
        },
        "end": {
          "line": 161,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4392,
      "end": 4393,
      "loc": {
        "start": {
          "line": 161,
          "column": 75
        },
        "end": {
          "line": 161,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4402,
      "end": 4403,
      "loc": {
        "start": {
          "line": 162,
          "column": 8
        },
        "end": {
          "line": 162,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4412,
      "end": 4418,
      "loc": {
        "start": {
          "line": 163,
          "column": 8
        },
        "end": {
          "line": 163,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4419,
      "end": 4424,
      "loc": {
        "start": {
          "line": 163,
          "column": 15
        },
        "end": {
          "line": 163,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4424,
      "end": 4425,
      "loc": {
        "start": {
          "line": 163,
          "column": 20
        },
        "end": {
          "line": 163,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4430,
      "end": 4431,
      "loc": {
        "start": {
          "line": 164,
          "column": 4
        },
        "end": {
          "line": 164,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4431,
      "end": 4432,
      "loc": {
        "start": {
          "line": 164,
          "column": 5
        },
        "end": {
          "line": 164,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 4438,
      "end": 4457,
      "loc": {
        "start": {
          "line": 166,
          "column": 4
        },
        "end": {
          "line": 166,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4457,
      "end": 4458,
      "loc": {
        "start": {
          "line": 166,
          "column": 23
        },
        "end": {
          "line": 166,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 4459,
      "end": 4467,
      "loc": {
        "start": {
          "line": 166,
          "column": 25
        },
        "end": {
          "line": 166,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4467,
      "end": 4468,
      "loc": {
        "start": {
          "line": 166,
          "column": 33
        },
        "end": {
          "line": 166,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reserved_spaces",
      "start": 4477,
      "end": 4492,
      "loc": {
        "start": {
          "line": 167,
          "column": 8
        },
        "end": {
          "line": 167,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4493,
      "end": 4494,
      "loc": {
        "start": {
          "line": 167,
          "column": 24
        },
        "end": {
          "line": 167,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 4495,
      "end": 4496,
      "loc": {
        "start": {
          "line": 167,
          "column": 26
        },
        "end": {
          "line": 167,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4496,
      "end": 4497,
      "loc": {
        "start": {
          "line": 167,
          "column": 27
        },
        "end": {
          "line": 167,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 4506,
      "end": 4510,
      "loc": {
        "start": {
          "line": 168,
          "column": 8
        },
        "end": {
          "line": 168,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4510,
      "end": 4511,
      "loc": {
        "start": {
          "line": 168,
          "column": 12
        },
        "end": {
          "line": 168,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4520,
      "end": 4525,
      "loc": {
        "start": {
          "line": 169,
          "column": 8
        },
        "end": {
          "line": 169,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4525,
      "end": 4526,
      "loc": {
        "start": {
          "line": 169,
          "column": 13
        },
        "end": {
          "line": 169,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 4535,
      "end": 4545,
      "loc": {
        "start": {
          "line": 170,
          "column": 8
        },
        "end": {
          "line": 170,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4546,
      "end": 4547,
      "loc": {
        "start": {
          "line": 170,
          "column": 19
        },
        "end": {
          "line": 170,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 4548,
      "end": 4550,
      "loc": {
        "start": {
          "line": 170,
          "column": 21
        },
        "end": {
          "line": 170,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4555,
      "end": 4556,
      "loc": {
        "start": {
          "line": 171,
          "column": 4
        },
        "end": {
          "line": 171,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4557,
      "end": 4558,
      "loc": {
        "start": {
          "line": 171,
          "column": 6
        },
        "end": {
          "line": 171,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4567,
      "end": 4569,
      "loc": {
        "start": {
          "line": 172,
          "column": 8
        },
        "end": {
          "line": 172,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4570,
      "end": 4571,
      "loc": {
        "start": {
          "line": 172,
          "column": 11
        },
        "end": {
          "line": 172,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4571,
      "end": 4575,
      "loc": {
        "start": {
          "line": 172,
          "column": 12
        },
        "end": {
          "line": 172,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4575,
      "end": 4576,
      "loc": {
        "start": {
          "line": 172,
          "column": 16
        },
        "end": {
          "line": 172,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 4576,
      "end": 4584,
      "loc": {
        "start": {
          "line": 172,
          "column": 17
        },
        "end": {
          "line": 172,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4584,
      "end": 4585,
      "loc": {
        "start": {
          "line": 172,
          "column": 25
        },
        "end": {
          "line": 172,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4585,
      "end": 4590,
      "loc": {
        "start": {
          "line": 172,
          "column": 26
        },
        "end": {
          "line": 172,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4590,
      "end": 4591,
      "loc": {
        "start": {
          "line": 172,
          "column": 31
        },
        "end": {
          "line": 172,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4591,
      "end": 4592,
      "loc": {
        "start": {
          "line": 172,
          "column": 32
        },
        "end": {
          "line": 172,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4593,
      "end": 4594,
      "loc": {
        "start": {
          "line": 172,
          "column": 34
        },
        "end": {
          "line": 172,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4607,
      "end": 4613,
      "loc": {
        "start": {
          "line": 173,
          "column": 12
        },
        "end": {
          "line": 173,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4614,
      "end": 4619,
      "loc": {
        "start": {
          "line": 173,
          "column": 19
        },
        "end": {
          "line": 173,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4619,
      "end": 4620,
      "loc": {
        "start": {
          "line": 173,
          "column": 24
        },
        "end": {
          "line": 173,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4629,
      "end": 4630,
      "loc": {
        "start": {
          "line": 174,
          "column": 8
        },
        "end": {
          "line": 174,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 4639,
      "end": 4642,
      "loc": {
        "start": {
          "line": 175,
          "column": 8
        },
        "end": {
          "line": 175,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 4643,
      "end": 4654,
      "loc": {
        "start": {
          "line": 175,
          "column": 12
        },
        "end": {
          "line": 175,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4655,
      "end": 4656,
      "loc": {
        "start": {
          "line": 175,
          "column": 24
        },
        "end": {
          "line": 175,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ChainTypes",
      "start": 4657,
      "end": 4667,
      "loc": {
        "start": {
          "line": 175,
          "column": 26
        },
        "end": {
          "line": 175,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4667,
      "end": 4668,
      "loc": {
        "start": {
          "line": 175,
          "column": 36
        },
        "end": {
          "line": 175,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 4668,
      "end": 4679,
      "loc": {
        "start": {
          "line": 175,
          "column": 37
        },
        "end": {
          "line": 175,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4679,
      "end": 4680,
      "loc": {
        "start": {
          "line": 175,
          "column": 48
        },
        "end": {
          "line": 175,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 4680,
      "end": 4684,
      "loc": {
        "start": {
          "line": 175,
          "column": 49
        },
        "end": {
          "line": 175,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4684,
      "end": 4685,
      "loc": {
        "start": {
          "line": 175,
          "column": 53
        },
        "end": {
          "line": 175,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4685,
      "end": 4686,
      "loc": {
        "start": {
          "line": 175,
          "column": 54
        },
        "end": {
          "line": 175,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4695,
      "end": 4697,
      "loc": {
        "start": {
          "line": 176,
          "column": 8
        },
        "end": {
          "line": 176,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4698,
      "end": 4699,
      "loc": {
        "start": {
          "line": 176,
          "column": 11
        },
        "end": {
          "line": 176,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4699,
      "end": 4700,
      "loc": {
        "start": {
          "line": 176,
          "column": 12
        },
        "end": {
          "line": 176,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 4700,
      "end": 4711,
      "loc": {
        "start": {
          "line": 176,
          "column": 13
        },
        "end": {
          "line": 176,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4711,
      "end": 4712,
      "loc": {
        "start": {
          "line": 176,
          "column": 24
        },
        "end": {
          "line": 176,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4713,
      "end": 4714,
      "loc": {
        "start": {
          "line": 176,
          "column": 26
        },
        "end": {
          "line": 176,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 4727,
      "end": 4732,
      "loc": {
        "start": {
          "line": 177,
          "column": 12
        },
        "end": {
          "line": 177,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 4733,
      "end": 4736,
      "loc": {
        "start": {
          "line": 177,
          "column": 18
        },
        "end": {
          "line": 177,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 4737,
      "end": 4742,
      "loc": {
        "start": {
          "line": 177,
          "column": 22
        },
        "end": {
          "line": 177,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4742,
      "end": 4743,
      "loc": {
        "start": {
          "line": 177,
          "column": 27
        },
        "end": {
          "line": 177,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4760,
      "end": 4761,
      "loc": {
        "start": {
          "line": 178,
          "column": 16
        },
        "end": {
          "line": 178,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Unknown object type ",
      "start": 4761,
      "end": 4781,
      "loc": {
        "start": {
          "line": 178,
          "column": 17
        },
        "end": {
          "line": 178,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4781,
      "end": 4783,
      "loc": {
        "start": {
          "line": 178,
          "column": 37
        },
        "end": {
          "line": 178,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 4783,
      "end": 4787,
      "loc": {
        "start": {
          "line": 178,
          "column": 39
        },
        "end": {
          "line": 178,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4787,
      "end": 4788,
      "loc": {
        "start": {
          "line": 178,
          "column": 43
        },
        "end": {
          "line": 178,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 4788,
      "end": 4789,
      "loc": {
        "start": {
          "line": 178,
          "column": 44
        },
        "end": {
          "line": 178,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4789,
      "end": 4791,
      "loc": {
        "start": {
          "line": 178,
          "column": 45
        },
        "end": {
          "line": 178,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 4791,
      "end": 4801,
      "loc": {
        "start": {
          "line": 178,
          "column": 47
        },
        "end": {
          "line": 178,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4801,
      "end": 4802,
      "loc": {
        "start": {
          "line": 178,
          "column": 57
        },
        "end": {
          "line": 178,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 4802,
      "end": 4803,
      "loc": {
        "start": {
          "line": 178,
          "column": 58
        },
        "end": {
          "line": 178,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4803,
      "end": 4805,
      "loc": {
        "start": {
          "line": 178,
          "column": 59
        },
        "end": {
          "line": 178,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4805,
      "end": 4810,
      "loc": {
        "start": {
          "line": 178,
          "column": 61
        },
        "end": {
          "line": 178,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4810,
      "end": 4811,
      "loc": {
        "start": {
          "line": 178,
          "column": 66
        },
        "end": {
          "line": 178,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 4811,
      "end": 4811,
      "loc": {
        "start": {
          "line": 178,
          "column": 67
        },
        "end": {
          "line": 178,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4811,
      "end": 4812,
      "loc": {
        "start": {
          "line": 178,
          "column": 67
        },
        "end": {
          "line": 178,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4825,
      "end": 4826,
      "loc": {
        "start": {
          "line": 179,
          "column": 12
        },
        "end": {
          "line": 179,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4826,
      "end": 4827,
      "loc": {
        "start": {
          "line": 179,
          "column": 13
        },
        "end": {
          "line": 179,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4836,
      "end": 4837,
      "loc": {
        "start": {
          "line": 180,
          "column": 8
        },
        "end": {
          "line": 180,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 4846,
      "end": 4849,
      "loc": {
        "start": {
          "line": 181,
          "column": 8
        },
        "end": {
          "line": 181,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "re",
      "start": 4850,
      "end": 4852,
      "loc": {
        "start": {
          "line": 181,
          "column": 12
        },
        "end": {
          "line": 181,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4853,
      "end": 4854,
      "loc": {
        "start": {
          "line": 181,
          "column": 15
        },
        "end": {
          "line": 181,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 4855,
      "end": 4858,
      "loc": {
        "start": {
          "line": 181,
          "column": 17
        },
        "end": {
          "line": 181,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "RegExp",
      "start": 4859,
      "end": 4865,
      "loc": {
        "start": {
          "line": 181,
          "column": 21
        },
        "end": {
          "line": 181,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4865,
      "end": 4866,
      "loc": {
        "start": {
          "line": 181,
          "column": 27
        },
        "end": {
          "line": 181,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4866,
      "end": 4867,
      "loc": {
        "start": {
          "line": 181,
          "column": 28
        },
        "end": {
          "line": 181,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 4867,
      "end": 4867,
      "loc": {
        "start": {
          "line": 181,
          "column": 29
        },
        "end": {
          "line": 181,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4867,
      "end": 4869,
      "loc": {
        "start": {
          "line": 181,
          "column": 29
        },
        "end": {
          "line": 181,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reserved_spaces",
      "start": 4869,
      "end": 4884,
      "loc": {
        "start": {
          "line": 181,
          "column": 31
        },
        "end": {
          "line": 181,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4884,
      "end": 4885,
      "loc": {
        "start": {
          "line": 181,
          "column": 46
        },
        "end": {
          "line": 181,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 4885,
      "end": 4887,
      "loc": {
        "start": {
          "line": 181,
          "column": 47
        },
        "end": {
          "line": 181,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4887,
      "end": 4889,
      "loc": {
        "start": {
          "line": 181,
          "column": 49
        },
        "end": {
          "line": 181,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 4889,
      "end": 4900,
      "loc": {
        "start": {
          "line": 181,
          "column": 51
        },
        "end": {
          "line": 181,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4900,
      "end": 4901,
      "loc": {
        "start": {
          "line": 181,
          "column": 62
        },
        "end": {
          "line": 181,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".[0-9]+$",
      "start": 4901,
      "end": 4910,
      "loc": {
        "start": {
          "line": 181,
          "column": 63
        },
        "end": {
          "line": 181,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4910,
      "end": 4911,
      "loc": {
        "start": {
          "line": 181,
          "column": 72
        },
        "end": {
          "line": 181,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4911,
      "end": 4912,
      "loc": {
        "start": {
          "line": 181,
          "column": 73
        },
        "end": {
          "line": 181,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4912,
      "end": 4913,
      "loc": {
        "start": {
          "line": 181,
          "column": 74
        },
        "end": {
          "line": 181,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4922,
      "end": 4924,
      "loc": {
        "start": {
          "line": 182,
          "column": 8
        },
        "end": {
          "line": 182,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4925,
      "end": 4926,
      "loc": {
        "start": {
          "line": 182,
          "column": 11
        },
        "end": {
          "line": 182,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4926,
      "end": 4927,
      "loc": {
        "start": {
          "line": 182,
          "column": 12
        },
        "end": {
          "line": 182,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "re",
      "start": 4927,
      "end": 4929,
      "loc": {
        "start": {
          "line": 182,
          "column": 13
        },
        "end": {
          "line": 182,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4929,
      "end": 4930,
      "loc": {
        "start": {
          "line": 182,
          "column": 15
        },
        "end": {
          "line": 182,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 4930,
      "end": 4934,
      "loc": {
        "start": {
          "line": 182,
          "column": 16
        },
        "end": {
          "line": 182,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4934,
      "end": 4935,
      "loc": {
        "start": {
          "line": 182,
          "column": 20
        },
        "end": {
          "line": 182,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 4935,
      "end": 4940,
      "loc": {
        "start": {
          "line": 182,
          "column": 21
        },
        "end": {
          "line": 182,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4940,
      "end": 4941,
      "loc": {
        "start": {
          "line": 182,
          "column": 26
        },
        "end": {
          "line": 182,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4941,
      "end": 4942,
      "loc": {
        "start": {
          "line": 182,
          "column": 27
        },
        "end": {
          "line": 182,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4943,
      "end": 4944,
      "loc": {
        "start": {
          "line": 182,
          "column": 29
        },
        "end": {
          "line": 182,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 4957,
      "end": 4962,
      "loc": {
        "start": {
          "line": 183,
          "column": 12
        },
        "end": {
          "line": 183,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 4963,
      "end": 4966,
      "loc": {
        "start": {
          "line": 183,
          "column": 18
        },
        "end": {
          "line": 183,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 4967,
      "end": 4972,
      "loc": {
        "start": {
          "line": 183,
          "column": 22
        },
        "end": {
          "line": 183,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4972,
      "end": 4973,
      "loc": {
        "start": {
          "line": 183,
          "column": 27
        },
        "end": {
          "line": 183,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4990,
      "end": 4991,
      "loc": {
        "start": {
          "line": 184,
          "column": 16
        },
        "end": {
          "line": 184,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Expecting ",
      "start": 4991,
      "end": 5001,
      "loc": {
        "start": {
          "line": 184,
          "column": 17
        },
        "end": {
          "line": 184,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5001,
      "end": 5003,
      "loc": {
        "start": {
          "line": 184,
          "column": 27
        },
        "end": {
          "line": 184,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5003,
      "end": 5007,
      "loc": {
        "start": {
          "line": 184,
          "column": 29
        },
        "end": {
          "line": 184,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5007,
      "end": 5008,
      "loc": {
        "start": {
          "line": 184,
          "column": 33
        },
        "end": {
          "line": 184,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " in format ",
      "start": 5008,
      "end": 5019,
      "loc": {
        "start": {
          "line": 184,
          "column": 34
        },
        "end": {
          "line": 184,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5019,
      "end": 5020,
      "loc": {
        "start": {
          "line": 184,
          "column": 45
        },
        "end": {
          "line": 184,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 5021,
      "end": 5022,
      "loc": {
        "start": {
          "line": 184,
          "column": 47
        },
        "end": {
          "line": 184,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5043,
      "end": 5044,
      "loc": {
        "start": {
          "line": 185,
          "column": 20
        },
        "end": {
          "line": 185,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 5044,
      "end": 5044,
      "loc": {
        "start": {
          "line": 185,
          "column": 21
        },
        "end": {
          "line": 185,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5044,
      "end": 5046,
      "loc": {
        "start": {
          "line": 185,
          "column": 21
        },
        "end": {
          "line": 185,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reserved_spaces",
      "start": 5046,
      "end": 5061,
      "loc": {
        "start": {
          "line": 185,
          "column": 23
        },
        "end": {
          "line": 185,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5061,
      "end": 5062,
      "loc": {
        "start": {
          "line": 185,
          "column": 38
        },
        "end": {
          "line": 185,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 5062,
      "end": 5063,
      "loc": {
        "start": {
          "line": 185,
          "column": 39
        },
        "end": {
          "line": 185,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5063,
      "end": 5065,
      "loc": {
        "start": {
          "line": 185,
          "column": 40
        },
        "end": {
          "line": 185,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 5065,
      "end": 5076,
      "loc": {
        "start": {
          "line": 185,
          "column": 42
        },
        "end": {
          "line": 185,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5076,
      "end": 5077,
      "loc": {
        "start": {
          "line": 185,
          "column": 53
        },
        "end": {
          "line": 185,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".[0-9]+ ",
      "start": 5077,
      "end": 5085,
      "loc": {
        "start": {
          "line": 185,
          "column": 54
        },
        "end": {
          "line": 185,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5085,
      "end": 5086,
      "loc": {
        "start": {
          "line": 185,
          "column": 62
        },
        "end": {
          "line": 185,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 5087,
      "end": 5088,
      "loc": {
        "start": {
          "line": 185,
          "column": 64
        },
        "end": {
          "line": 185,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5109,
      "end": 5110,
      "loc": {
        "start": {
          "line": 186,
          "column": 20
        },
        "end": {
          "line": 186,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "instead of ",
      "start": 5110,
      "end": 5121,
      "loc": {
        "start": {
          "line": 186,
          "column": 21
        },
        "end": {
          "line": 186,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5121,
      "end": 5123,
      "loc": {
        "start": {
          "line": 186,
          "column": 32
        },
        "end": {
          "line": 186,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5123,
      "end": 5128,
      "loc": {
        "start": {
          "line": 186,
          "column": 34
        },
        "end": {
          "line": 186,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5128,
      "end": 5129,
      "loc": {
        "start": {
          "line": 186,
          "column": 39
        },
        "end": {
          "line": 186,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 5129,
      "end": 5130,
      "loc": {
        "start": {
          "line": 186,
          "column": 40
        },
        "end": {
          "line": 186,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5130,
      "end": 5132,
      "loc": {
        "start": {
          "line": 186,
          "column": 41
        },
        "end": {
          "line": 186,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5132,
      "end": 5142,
      "loc": {
        "start": {
          "line": 186,
          "column": 43
        },
        "end": {
          "line": 186,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5142,
      "end": 5143,
      "loc": {
        "start": {
          "line": 186,
          "column": 53
        },
        "end": {
          "line": 186,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 5143,
      "end": 5144,
      "loc": {
        "start": {
          "line": 186,
          "column": 54
        },
        "end": {
          "line": 186,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5144,
      "end": 5146,
      "loc": {
        "start": {
          "line": 186,
          "column": 55
        },
        "end": {
          "line": 186,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5146,
      "end": 5151,
      "loc": {
        "start": {
          "line": 186,
          "column": 57
        },
        "end": {
          "line": 186,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5151,
      "end": 5152,
      "loc": {
        "start": {
          "line": 186,
          "column": 62
        },
        "end": {
          "line": 186,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 5152,
      "end": 5152,
      "loc": {
        "start": {
          "line": 186,
          "column": 63
        },
        "end": {
          "line": 186,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5152,
      "end": 5153,
      "loc": {
        "start": {
          "line": 186,
          "column": 63
        },
        "end": {
          "line": 186,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5166,
      "end": 5167,
      "loc": {
        "start": {
          "line": 187,
          "column": 12
        },
        "end": {
          "line": 187,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5167,
      "end": 5168,
      "loc": {
        "start": {
          "line": 187,
          "column": 13
        },
        "end": {
          "line": 187,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5177,
      "end": 5178,
      "loc": {
        "start": {
          "line": 188,
          "column": 8
        },
        "end": {
          "line": 188,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5187,
      "end": 5193,
      "loc": {
        "start": {
          "line": 189,
          "column": 8
        },
        "end": {
          "line": 189,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5194,
      "end": 5199,
      "loc": {
        "start": {
          "line": 189,
          "column": 15
        },
        "end": {
          "line": 189,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5199,
      "end": 5200,
      "loc": {
        "start": {
          "line": 189,
          "column": 20
        },
        "end": {
          "line": 189,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5205,
      "end": 5206,
      "loc": {
        "start": {
          "line": 190,
          "column": 4
        },
        "end": {
          "line": 190,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5206,
      "end": 5207,
      "loc": {
        "start": {
          "line": 190,
          "column": 5
        },
        "end": {
          "line": 190,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_instance",
      "start": 5213,
      "end": 5225,
      "loc": {
        "start": {
          "line": 192,
          "column": 4
        },
        "end": {
          "line": 192,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5225,
      "end": 5226,
      "loc": {
        "start": {
          "line": 192,
          "column": 16
        },
        "end": {
          "line": 192,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 5227,
      "end": 5235,
      "loc": {
        "start": {
          "line": 192,
          "column": 18
        },
        "end": {
          "line": 192,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5235,
      "end": 5236,
      "loc": {
        "start": {
          "line": 192,
          "column": 26
        },
        "end": {
          "line": 192,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reserve_spaces",
      "start": 5236,
      "end": 5250,
      "loc": {
        "start": {
          "line": 192,
          "column": 27
        },
        "end": {
          "line": 192,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5250,
      "end": 5251,
      "loc": {
        "start": {
          "line": 192,
          "column": 41
        },
        "end": {
          "line": 192,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5252,
      "end": 5256,
      "loc": {
        "start": {
          "line": 192,
          "column": 43
        },
        "end": {
          "line": 192,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5256,
      "end": 5257,
      "loc": {
        "start": {
          "line": 192,
          "column": 47
        },
        "end": {
          "line": 192,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5258,
      "end": 5263,
      "loc": {
        "start": {
          "line": 192,
          "column": 49
        },
        "end": {
          "line": 192,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5263,
      "end": 5264,
      "loc": {
        "start": {
          "line": 192,
          "column": 54
        },
        "end": {
          "line": 192,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5265,
      "end": 5275,
      "loc": {
        "start": {
          "line": 192,
          "column": 56
        },
        "end": {
          "line": 192,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5275,
      "end": 5276,
      "loc": {
        "start": {
          "line": 192,
          "column": 66
        },
        "end": {
          "line": 192,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5277,
      "end": 5278,
      "loc": {
        "start": {
          "line": 192,
          "column": 68
        },
        "end": {
          "line": 192,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5287,
      "end": 5289,
      "loc": {
        "start": {
          "line": 193,
          "column": 8
        },
        "end": {
          "line": 193,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5290,
      "end": 5291,
      "loc": {
        "start": {
          "line": 193,
          "column": 11
        },
        "end": {
          "line": 193,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5291,
      "end": 5295,
      "loc": {
        "start": {
          "line": 193,
          "column": 12
        },
        "end": {
          "line": 193,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5295,
      "end": 5296,
      "loc": {
        "start": {
          "line": 193,
          "column": 16
        },
        "end": {
          "line": 193,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 5296,
      "end": 5304,
      "loc": {
        "start": {
          "line": 193,
          "column": 17
        },
        "end": {
          "line": 193,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5304,
      "end": 5305,
      "loc": {
        "start": {
          "line": 193,
          "column": 25
        },
        "end": {
          "line": 193,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5305,
      "end": 5310,
      "loc": {
        "start": {
          "line": 193,
          "column": 26
        },
        "end": {
          "line": 193,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5310,
      "end": 5311,
      "loc": {
        "start": {
          "line": 193,
          "column": 31
        },
        "end": {
          "line": 193,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5311,
      "end": 5312,
      "loc": {
        "start": {
          "line": 193,
          "column": 32
        },
        "end": {
          "line": 193,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5313,
      "end": 5314,
      "loc": {
        "start": {
          "line": 193,
          "column": 34
        },
        "end": {
          "line": 193,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5327,
      "end": 5333,
      "loc": {
        "start": {
          "line": 194,
          "column": 12
        },
        "end": {
          "line": 194,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5334,
      "end": 5339,
      "loc": {
        "start": {
          "line": 194,
          "column": 19
        },
        "end": {
          "line": 194,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5339,
      "end": 5340,
      "loc": {
        "start": {
          "line": 194,
          "column": 24
        },
        "end": {
          "line": 194,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5349,
      "end": 5350,
      "loc": {
        "start": {
          "line": 195,
          "column": 8
        },
        "end": {
          "line": 195,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5359,
      "end": 5363,
      "loc": {
        "start": {
          "line": 196,
          "column": 8
        },
        "end": {
          "line": 196,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5363,
      "end": 5364,
      "loc": {
        "start": {
          "line": 196,
          "column": 12
        },
        "end": {
          "line": 196,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 5364,
      "end": 5383,
      "loc": {
        "start": {
          "line": 196,
          "column": 13
        },
        "end": {
          "line": 196,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5383,
      "end": 5384,
      "loc": {
        "start": {
          "line": 196,
          "column": 32
        },
        "end": {
          "line": 196,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reserve_spaces",
      "start": 5384,
      "end": 5398,
      "loc": {
        "start": {
          "line": 196,
          "column": 33
        },
        "end": {
          "line": 196,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5398,
      "end": 5399,
      "loc": {
        "start": {
          "line": 196,
          "column": 47
        },
        "end": {
          "line": 196,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5400,
      "end": 5404,
      "loc": {
        "start": {
          "line": 196,
          "column": 49
        },
        "end": {
          "line": 196,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5404,
      "end": 5405,
      "loc": {
        "start": {
          "line": 196,
          "column": 53
        },
        "end": {
          "line": 196,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5406,
      "end": 5411,
      "loc": {
        "start": {
          "line": 196,
          "column": 55
        },
        "end": {
          "line": 196,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5411,
      "end": 5412,
      "loc": {
        "start": {
          "line": 196,
          "column": 60
        },
        "end": {
          "line": 196,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5413,
      "end": 5423,
      "loc": {
        "start": {
          "line": 196,
          "column": 62
        },
        "end": {
          "line": 196,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5423,
      "end": 5424,
      "loc": {
        "start": {
          "line": 196,
          "column": 72
        },
        "end": {
          "line": 196,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5424,
      "end": 5425,
      "loc": {
        "start": {
          "line": 196,
          "column": 73
        },
        "end": {
          "line": 196,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5434,
      "end": 5440,
      "loc": {
        "start": {
          "line": 197,
          "column": 8
        },
        "end": {
          "line": 197,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5441,
      "end": 5445,
      "loc": {
        "start": {
          "line": 197,
          "column": 15
        },
        "end": {
          "line": 197,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5445,
      "end": 5446,
      "loc": {
        "start": {
          "line": 197,
          "column": 19
        },
        "end": {
          "line": 197,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 5446,
      "end": 5455,
      "loc": {
        "start": {
          "line": 197,
          "column": 20
        },
        "end": {
          "line": 197,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5455,
      "end": 5456,
      "loc": {
        "start": {
          "line": 197,
          "column": 29
        },
        "end": {
          "line": 197,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5456,
      "end": 5461,
      "loc": {
        "start": {
          "line": 197,
          "column": 30
        },
        "end": {
          "line": 197,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5461,
      "end": 5462,
      "loc": {
        "start": {
          "line": 197,
          "column": 35
        },
        "end": {
          "line": 197,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 5462,
      "end": 5467,
      "loc": {
        "start": {
          "line": 197,
          "column": 36
        },
        "end": {
          "line": 197,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5467,
      "end": 5468,
      "loc": {
        "start": {
          "line": 197,
          "column": 41
        },
        "end": {
          "line": 197,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 5468,
      "end": 5471,
      "loc": {
        "start": {
          "line": 197,
          "column": 42
        },
        "end": {
          "line": 197,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5471,
      "end": 5472,
      "loc": {
        "start": {
          "line": 197,
          "column": 45
        },
        "end": {
          "line": 197,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5472,
      "end": 5473,
      "loc": {
        "start": {
          "line": 197,
          "column": 46
        },
        "end": {
          "line": 197,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 5473,
      "end": 5474,
      "loc": {
        "start": {
          "line": 197,
          "column": 47
        },
        "end": {
          "line": 197,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5474,
      "end": 5475,
      "loc": {
        "start": {
          "line": 197,
          "column": 48
        },
        "end": {
          "line": 197,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5475,
      "end": 5476,
      "loc": {
        "start": {
          "line": 197,
          "column": 49
        },
        "end": {
          "line": 197,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5476,
      "end": 5477,
      "loc": {
        "start": {
          "line": 197,
          "column": 50
        },
        "end": {
          "line": 197,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5482,
      "end": 5483,
      "loc": {
        "start": {
          "line": 198,
          "column": 4
        },
        "end": {
          "line": 198,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5483,
      "end": 5484,
      "loc": {
        "start": {
          "line": 198,
          "column": 5
        },
        "end": {
          "line": 198,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_relative_type",
      "start": 5490,
      "end": 5511,
      "loc": {
        "start": {
          "line": 200,
          "column": 4
        },
        "end": {
          "line": 200,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5511,
      "end": 5512,
      "loc": {
        "start": {
          "line": 200,
          "column": 25
        },
        "end": {
          "line": 200,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 5513,
      "end": 5521,
      "loc": {
        "start": {
          "line": 200,
          "column": 27
        },
        "end": {
          "line": 200,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5521,
      "end": 5522,
      "loc": {
        "start": {
          "line": 200,
          "column": 35
        },
        "end": {
          "line": 200,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5522,
      "end": 5526,
      "loc": {
        "start": {
          "line": 200,
          "column": 36
        },
        "end": {
          "line": 200,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5526,
      "end": 5527,
      "loc": {
        "start": {
          "line": 200,
          "column": 40
        },
        "end": {
          "line": 200,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5528,
      "end": 5533,
      "loc": {
        "start": {
          "line": 200,
          "column": 42
        },
        "end": {
          "line": 200,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5533,
      "end": 5534,
      "loc": {
        "start": {
          "line": 200,
          "column": 47
        },
        "end": {
          "line": 200,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5535,
      "end": 5545,
      "loc": {
        "start": {
          "line": 200,
          "column": 49
        },
        "end": {
          "line": 200,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5545,
      "end": 5546,
      "loc": {
        "start": {
          "line": 200,
          "column": 59
        },
        "end": {
          "line": 200,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5547,
      "end": 5548,
      "loc": {
        "start": {
          "line": 200,
          "column": 61
        },
        "end": {
          "line": 200,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5557,
      "end": 5561,
      "loc": {
        "start": {
          "line": 201,
          "column": 8
        },
        "end": {
          "line": 201,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5561,
      "end": 5562,
      "loc": {
        "start": {
          "line": 201,
          "column": 12
        },
        "end": {
          "line": 201,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 5562,
      "end": 5581,
      "loc": {
        "start": {
          "line": 201,
          "column": 13
        },
        "end": {
          "line": 201,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5581,
      "end": 5582,
      "loc": {
        "start": {
          "line": 201,
          "column": 32
        },
        "end": {
          "line": 201,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5582,
      "end": 5583,
      "loc": {
        "start": {
          "line": 201,
          "column": 33
        },
        "end": {
          "line": 201,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5583,
      "end": 5584,
      "loc": {
        "start": {
          "line": 201,
          "column": 34
        },
        "end": {
          "line": 201,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5585,
      "end": 5589,
      "loc": {
        "start": {
          "line": 201,
          "column": 36
        },
        "end": {
          "line": 201,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5589,
      "end": 5590,
      "loc": {
        "start": {
          "line": 201,
          "column": 40
        },
        "end": {
          "line": 201,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5591,
      "end": 5596,
      "loc": {
        "start": {
          "line": 201,
          "column": 42
        },
        "end": {
          "line": 201,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5596,
      "end": 5597,
      "loc": {
        "start": {
          "line": 201,
          "column": 47
        },
        "end": {
          "line": 201,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5598,
      "end": 5608,
      "loc": {
        "start": {
          "line": 201,
          "column": 49
        },
        "end": {
          "line": 201,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5608,
      "end": 5609,
      "loc": {
        "start": {
          "line": 201,
          "column": 59
        },
        "end": {
          "line": 201,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5609,
      "end": 5610,
      "loc": {
        "start": {
          "line": 201,
          "column": 60
        },
        "end": {
          "line": 201,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5619,
      "end": 5625,
      "loc": {
        "start": {
          "line": 202,
          "column": 8
        },
        "end": {
          "line": 202,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5626,
      "end": 5631,
      "loc": {
        "start": {
          "line": 202,
          "column": 15
        },
        "end": {
          "line": 202,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5631,
      "end": 5632,
      "loc": {
        "start": {
          "line": 202,
          "column": 20
        },
        "end": {
          "line": 202,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5637,
      "end": 5638,
      "loc": {
        "start": {
          "line": 203,
          "column": 4
        },
        "end": {
          "line": 203,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5638,
      "end": 5639,
      "loc": {
        "start": {
          "line": 203,
          "column": 5
        },
        "end": {
          "line": 203,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_relative_instance",
      "start": 5645,
      "end": 5666,
      "loc": {
        "start": {
          "line": 205,
          "column": 4
        },
        "end": {
          "line": 205,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5666,
      "end": 5667,
      "loc": {
        "start": {
          "line": 205,
          "column": 25
        },
        "end": {
          "line": 205,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 5668,
      "end": 5676,
      "loc": {
        "start": {
          "line": 205,
          "column": 27
        },
        "end": {
          "line": 205,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5676,
      "end": 5677,
      "loc": {
        "start": {
          "line": 205,
          "column": 35
        },
        "end": {
          "line": 205,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5677,
      "end": 5681,
      "loc": {
        "start": {
          "line": 205,
          "column": 36
        },
        "end": {
          "line": 205,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5681,
      "end": 5682,
      "loc": {
        "start": {
          "line": 205,
          "column": 40
        },
        "end": {
          "line": 205,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5683,
      "end": 5688,
      "loc": {
        "start": {
          "line": 205,
          "column": 42
        },
        "end": {
          "line": 205,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5688,
      "end": 5689,
      "loc": {
        "start": {
          "line": 205,
          "column": 47
        },
        "end": {
          "line": 205,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5690,
      "end": 5700,
      "loc": {
        "start": {
          "line": 205,
          "column": 49
        },
        "end": {
          "line": 205,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5700,
      "end": 5701,
      "loc": {
        "start": {
          "line": 205,
          "column": 59
        },
        "end": {
          "line": 205,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5702,
      "end": 5703,
      "loc": {
        "start": {
          "line": 205,
          "column": 61
        },
        "end": {
          "line": 205,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5712,
      "end": 5714,
      "loc": {
        "start": {
          "line": 206,
          "column": 8
        },
        "end": {
          "line": 206,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5715,
      "end": 5716,
      "loc": {
        "start": {
          "line": 206,
          "column": 11
        },
        "end": {
          "line": 206,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5716,
      "end": 5720,
      "loc": {
        "start": {
          "line": 206,
          "column": 12
        },
        "end": {
          "line": 206,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5720,
      "end": 5721,
      "loc": {
        "start": {
          "line": 206,
          "column": 16
        },
        "end": {
          "line": 206,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 5721,
      "end": 5729,
      "loc": {
        "start": {
          "line": 206,
          "column": 17
        },
        "end": {
          "line": 206,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5729,
      "end": 5730,
      "loc": {
        "start": {
          "line": 206,
          "column": 25
        },
        "end": {
          "line": 206,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5730,
      "end": 5735,
      "loc": {
        "start": {
          "line": 206,
          "column": 26
        },
        "end": {
          "line": 206,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5735,
      "end": 5736,
      "loc": {
        "start": {
          "line": 206,
          "column": 31
        },
        "end": {
          "line": 206,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5736,
      "end": 5737,
      "loc": {
        "start": {
          "line": 206,
          "column": 32
        },
        "end": {
          "line": 206,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5738,
      "end": 5739,
      "loc": {
        "start": {
          "line": 206,
          "column": 34
        },
        "end": {
          "line": 206,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5752,
      "end": 5758,
      "loc": {
        "start": {
          "line": 207,
          "column": 12
        },
        "end": {
          "line": 207,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5759,
      "end": 5764,
      "loc": {
        "start": {
          "line": 207,
          "column": 19
        },
        "end": {
          "line": 207,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5764,
      "end": 5765,
      "loc": {
        "start": {
          "line": 207,
          "column": 24
        },
        "end": {
          "line": 207,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5774,
      "end": 5775,
      "loc": {
        "start": {
          "line": 208,
          "column": 8
        },
        "end": {
          "line": 208,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5784,
      "end": 5788,
      "loc": {
        "start": {
          "line": 209,
          "column": 8
        },
        "end": {
          "line": 209,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5788,
      "end": 5789,
      "loc": {
        "start": {
          "line": 209,
          "column": 12
        },
        "end": {
          "line": 209,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 5789,
      "end": 5808,
      "loc": {
        "start": {
          "line": 209,
          "column": 13
        },
        "end": {
          "line": 209,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5808,
      "end": 5809,
      "loc": {
        "start": {
          "line": 209,
          "column": 32
        },
        "end": {
          "line": 209,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 5809,
      "end": 5810,
      "loc": {
        "start": {
          "line": 209,
          "column": 33
        },
        "end": {
          "line": 209,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5810,
      "end": 5811,
      "loc": {
        "start": {
          "line": 209,
          "column": 34
        },
        "end": {
          "line": 209,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5812,
      "end": 5816,
      "loc": {
        "start": {
          "line": 209,
          "column": 36
        },
        "end": {
          "line": 209,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5816,
      "end": 5817,
      "loc": {
        "start": {
          "line": 209,
          "column": 40
        },
        "end": {
          "line": 209,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5818,
      "end": 5823,
      "loc": {
        "start": {
          "line": 209,
          "column": 42
        },
        "end": {
          "line": 209,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5823,
      "end": 5824,
      "loc": {
        "start": {
          "line": 209,
          "column": 47
        },
        "end": {
          "line": 209,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5825,
      "end": 5835,
      "loc": {
        "start": {
          "line": 209,
          "column": 49
        },
        "end": {
          "line": 209,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5835,
      "end": 5836,
      "loc": {
        "start": {
          "line": 209,
          "column": 59
        },
        "end": {
          "line": 209,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5836,
      "end": 5837,
      "loc": {
        "start": {
          "line": 209,
          "column": 60
        },
        "end": {
          "line": 209,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5846,
      "end": 5852,
      "loc": {
        "start": {
          "line": 210,
          "column": 8
        },
        "end": {
          "line": 210,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5853,
      "end": 5857,
      "loc": {
        "start": {
          "line": 210,
          "column": 15
        },
        "end": {
          "line": 210,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5857,
      "end": 5858,
      "loc": {
        "start": {
          "line": 210,
          "column": 19
        },
        "end": {
          "line": 210,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 5858,
      "end": 5867,
      "loc": {
        "start": {
          "line": 210,
          "column": 20
        },
        "end": {
          "line": 210,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5867,
      "end": 5868,
      "loc": {
        "start": {
          "line": 210,
          "column": 29
        },
        "end": {
          "line": 210,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5868,
      "end": 5873,
      "loc": {
        "start": {
          "line": 210,
          "column": 30
        },
        "end": {
          "line": 210,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5873,
      "end": 5874,
      "loc": {
        "start": {
          "line": 210,
          "column": 35
        },
        "end": {
          "line": 210,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 5874,
      "end": 5879,
      "loc": {
        "start": {
          "line": 210,
          "column": 36
        },
        "end": {
          "line": 210,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5879,
      "end": 5880,
      "loc": {
        "start": {
          "line": 210,
          "column": 41
        },
        "end": {
          "line": 210,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 5880,
      "end": 5883,
      "loc": {
        "start": {
          "line": 210,
          "column": 42
        },
        "end": {
          "line": 210,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5883,
      "end": 5884,
      "loc": {
        "start": {
          "line": 210,
          "column": 45
        },
        "end": {
          "line": 210,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5884,
      "end": 5885,
      "loc": {
        "start": {
          "line": 210,
          "column": 46
        },
        "end": {
          "line": 210,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 5885,
      "end": 5886,
      "loc": {
        "start": {
          "line": 210,
          "column": 47
        },
        "end": {
          "line": 210,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5886,
      "end": 5887,
      "loc": {
        "start": {
          "line": 210,
          "column": 48
        },
        "end": {
          "line": 210,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5887,
      "end": 5888,
      "loc": {
        "start": {
          "line": 210,
          "column": 49
        },
        "end": {
          "line": 210,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5888,
      "end": 5889,
      "loc": {
        "start": {
          "line": 210,
          "column": 50
        },
        "end": {
          "line": 210,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5894,
      "end": 5895,
      "loc": {
        "start": {
          "line": 211,
          "column": 4
        },
        "end": {
          "line": 211,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5895,
      "end": 5896,
      "loc": {
        "start": {
          "line": 211,
          "column": 5
        },
        "end": {
          "line": 211,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_protocol_type",
      "start": 5902,
      "end": 5923,
      "loc": {
        "start": {
          "line": 213,
          "column": 4
        },
        "end": {
          "line": 213,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5923,
      "end": 5924,
      "loc": {
        "start": {
          "line": 213,
          "column": 25
        },
        "end": {
          "line": 213,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 5925,
      "end": 5933,
      "loc": {
        "start": {
          "line": 213,
          "column": 27
        },
        "end": {
          "line": 213,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5933,
      "end": 5934,
      "loc": {
        "start": {
          "line": 213,
          "column": 35
        },
        "end": {
          "line": 213,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5934,
      "end": 5938,
      "loc": {
        "start": {
          "line": 213,
          "column": 36
        },
        "end": {
          "line": 213,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5938,
      "end": 5939,
      "loc": {
        "start": {
          "line": 213,
          "column": 40
        },
        "end": {
          "line": 213,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 5940,
      "end": 5945,
      "loc": {
        "start": {
          "line": 213,
          "column": 42
        },
        "end": {
          "line": 213,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5945,
      "end": 5946,
      "loc": {
        "start": {
          "line": 213,
          "column": 47
        },
        "end": {
          "line": 213,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 5947,
      "end": 5957,
      "loc": {
        "start": {
          "line": 213,
          "column": 49
        },
        "end": {
          "line": 213,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5957,
      "end": 5958,
      "loc": {
        "start": {
          "line": 213,
          "column": 59
        },
        "end": {
          "line": 213,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5959,
      "end": 5960,
      "loc": {
        "start": {
          "line": 213,
          "column": 61
        },
        "end": {
          "line": 213,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5969,
      "end": 5973,
      "loc": {
        "start": {
          "line": 214,
          "column": 8
        },
        "end": {
          "line": 214,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5973,
      "end": 5974,
      "loc": {
        "start": {
          "line": 214,
          "column": 12
        },
        "end": {
          "line": 214,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 5974,
      "end": 5993,
      "loc": {
        "start": {
          "line": 214,
          "column": 13
        },
        "end": {
          "line": 214,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5993,
      "end": 5994,
      "loc": {
        "start": {
          "line": 214,
          "column": 32
        },
        "end": {
          "line": 214,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 5994,
      "end": 5995,
      "loc": {
        "start": {
          "line": 214,
          "column": 33
        },
        "end": {
          "line": 214,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5995,
      "end": 5996,
      "loc": {
        "start": {
          "line": 214,
          "column": 34
        },
        "end": {
          "line": 214,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 5997,
      "end": 6001,
      "loc": {
        "start": {
          "line": 214,
          "column": 36
        },
        "end": {
          "line": 214,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6001,
      "end": 6002,
      "loc": {
        "start": {
          "line": 214,
          "column": 40
        },
        "end": {
          "line": 214,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6003,
      "end": 6008,
      "loc": {
        "start": {
          "line": 214,
          "column": 42
        },
        "end": {
          "line": 214,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6008,
      "end": 6009,
      "loc": {
        "start": {
          "line": 214,
          "column": 47
        },
        "end": {
          "line": 214,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6010,
      "end": 6020,
      "loc": {
        "start": {
          "line": 214,
          "column": 49
        },
        "end": {
          "line": 214,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6020,
      "end": 6021,
      "loc": {
        "start": {
          "line": 214,
          "column": 59
        },
        "end": {
          "line": 214,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6021,
      "end": 6022,
      "loc": {
        "start": {
          "line": 214,
          "column": 60
        },
        "end": {
          "line": 214,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6031,
      "end": 6037,
      "loc": {
        "start": {
          "line": 215,
          "column": 8
        },
        "end": {
          "line": 215,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6038,
      "end": 6043,
      "loc": {
        "start": {
          "line": 215,
          "column": 15
        },
        "end": {
          "line": 215,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6043,
      "end": 6044,
      "loc": {
        "start": {
          "line": 215,
          "column": 20
        },
        "end": {
          "line": 215,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6049,
      "end": 6050,
      "loc": {
        "start": {
          "line": 216,
          "column": 4
        },
        "end": {
          "line": 216,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6050,
      "end": 6051,
      "loc": {
        "start": {
          "line": 216,
          "column": 5
        },
        "end": {
          "line": 216,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_protocol_instance",
      "start": 6057,
      "end": 6078,
      "loc": {
        "start": {
          "line": 218,
          "column": 4
        },
        "end": {
          "line": 218,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6078,
      "end": 6079,
      "loc": {
        "start": {
          "line": 218,
          "column": 25
        },
        "end": {
          "line": 218,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 6080,
      "end": 6088,
      "loc": {
        "start": {
          "line": 218,
          "column": 27
        },
        "end": {
          "line": 218,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6088,
      "end": 6089,
      "loc": {
        "start": {
          "line": 218,
          "column": 35
        },
        "end": {
          "line": 218,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 6089,
      "end": 6093,
      "loc": {
        "start": {
          "line": 218,
          "column": 36
        },
        "end": {
          "line": 218,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6093,
      "end": 6094,
      "loc": {
        "start": {
          "line": 218,
          "column": 40
        },
        "end": {
          "line": 218,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6095,
      "end": 6100,
      "loc": {
        "start": {
          "line": 218,
          "column": 42
        },
        "end": {
          "line": 218,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6100,
      "end": 6101,
      "loc": {
        "start": {
          "line": 218,
          "column": 47
        },
        "end": {
          "line": 218,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6102,
      "end": 6112,
      "loc": {
        "start": {
          "line": 218,
          "column": 49
        },
        "end": {
          "line": 218,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6112,
      "end": 6113,
      "loc": {
        "start": {
          "line": 218,
          "column": 59
        },
        "end": {
          "line": 218,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6114,
      "end": 6115,
      "loc": {
        "start": {
          "line": 218,
          "column": 61
        },
        "end": {
          "line": 218,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6124,
      "end": 6126,
      "loc": {
        "start": {
          "line": 219,
          "column": 8
        },
        "end": {
          "line": 219,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6127,
      "end": 6128,
      "loc": {
        "start": {
          "line": 219,
          "column": 11
        },
        "end": {
          "line": 219,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6128,
      "end": 6132,
      "loc": {
        "start": {
          "line": 219,
          "column": 12
        },
        "end": {
          "line": 219,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6132,
      "end": 6133,
      "loc": {
        "start": {
          "line": 219,
          "column": 16
        },
        "end": {
          "line": 219,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 6133,
      "end": 6141,
      "loc": {
        "start": {
          "line": 219,
          "column": 17
        },
        "end": {
          "line": 219,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6141,
      "end": 6142,
      "loc": {
        "start": {
          "line": 219,
          "column": 25
        },
        "end": {
          "line": 219,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6142,
      "end": 6147,
      "loc": {
        "start": {
          "line": 219,
          "column": 26
        },
        "end": {
          "line": 219,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6147,
      "end": 6148,
      "loc": {
        "start": {
          "line": 219,
          "column": 31
        },
        "end": {
          "line": 219,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6148,
      "end": 6149,
      "loc": {
        "start": {
          "line": 219,
          "column": 32
        },
        "end": {
          "line": 219,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6150,
      "end": 6151,
      "loc": {
        "start": {
          "line": 219,
          "column": 34
        },
        "end": {
          "line": 219,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6164,
      "end": 6170,
      "loc": {
        "start": {
          "line": 220,
          "column": 12
        },
        "end": {
          "line": 220,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6171,
      "end": 6176,
      "loc": {
        "start": {
          "line": 220,
          "column": 19
        },
        "end": {
          "line": 220,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6176,
      "end": 6177,
      "loc": {
        "start": {
          "line": 220,
          "column": 24
        },
        "end": {
          "line": 220,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6186,
      "end": 6187,
      "loc": {
        "start": {
          "line": 221,
          "column": 8
        },
        "end": {
          "line": 221,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6196,
      "end": 6200,
      "loc": {
        "start": {
          "line": 222,
          "column": 8
        },
        "end": {
          "line": 222,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6200,
      "end": 6201,
      "loc": {
        "start": {
          "line": 222,
          "column": 12
        },
        "end": {
          "line": 222,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 6201,
      "end": 6220,
      "loc": {
        "start": {
          "line": 222,
          "column": 13
        },
        "end": {
          "line": 222,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6220,
      "end": 6221,
      "loc": {
        "start": {
          "line": 222,
          "column": 32
        },
        "end": {
          "line": 222,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 6221,
      "end": 6222,
      "loc": {
        "start": {
          "line": 222,
          "column": 33
        },
        "end": {
          "line": 222,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6222,
      "end": 6223,
      "loc": {
        "start": {
          "line": 222,
          "column": 34
        },
        "end": {
          "line": 222,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 6224,
      "end": 6228,
      "loc": {
        "start": {
          "line": 222,
          "column": 36
        },
        "end": {
          "line": 222,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6228,
      "end": 6229,
      "loc": {
        "start": {
          "line": 222,
          "column": 40
        },
        "end": {
          "line": 222,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6230,
      "end": 6235,
      "loc": {
        "start": {
          "line": 222,
          "column": 42
        },
        "end": {
          "line": 222,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6235,
      "end": 6236,
      "loc": {
        "start": {
          "line": 222,
          "column": 47
        },
        "end": {
          "line": 222,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6237,
      "end": 6247,
      "loc": {
        "start": {
          "line": 222,
          "column": 49
        },
        "end": {
          "line": 222,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6247,
      "end": 6248,
      "loc": {
        "start": {
          "line": 222,
          "column": 59
        },
        "end": {
          "line": 222,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6248,
      "end": 6249,
      "loc": {
        "start": {
          "line": 222,
          "column": 60
        },
        "end": {
          "line": 222,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6258,
      "end": 6264,
      "loc": {
        "start": {
          "line": 223,
          "column": 8
        },
        "end": {
          "line": 223,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6265,
      "end": 6269,
      "loc": {
        "start": {
          "line": 223,
          "column": 15
        },
        "end": {
          "line": 223,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6269,
      "end": 6270,
      "loc": {
        "start": {
          "line": 223,
          "column": 19
        },
        "end": {
          "line": 223,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 6270,
      "end": 6279,
      "loc": {
        "start": {
          "line": 223,
          "column": 20
        },
        "end": {
          "line": 223,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6279,
      "end": 6280,
      "loc": {
        "start": {
          "line": 223,
          "column": 29
        },
        "end": {
          "line": 223,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6280,
      "end": 6285,
      "loc": {
        "start": {
          "line": 223,
          "column": 30
        },
        "end": {
          "line": 223,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6285,
      "end": 6286,
      "loc": {
        "start": {
          "line": 223,
          "column": 35
        },
        "end": {
          "line": 223,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 6286,
      "end": 6291,
      "loc": {
        "start": {
          "line": 223,
          "column": 36
        },
        "end": {
          "line": 223,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6291,
      "end": 6292,
      "loc": {
        "start": {
          "line": 223,
          "column": 41
        },
        "end": {
          "line": 223,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 6292,
      "end": 6295,
      "loc": {
        "start": {
          "line": 223,
          "column": 42
        },
        "end": {
          "line": 223,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6295,
      "end": 6296,
      "loc": {
        "start": {
          "line": 223,
          "column": 45
        },
        "end": {
          "line": 223,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6296,
      "end": 6297,
      "loc": {
        "start": {
          "line": 223,
          "column": 46
        },
        "end": {
          "line": 223,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 6297,
      "end": 6298,
      "loc": {
        "start": {
          "line": 223,
          "column": 47
        },
        "end": {
          "line": 223,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6298,
      "end": 6299,
      "loc": {
        "start": {
          "line": 223,
          "column": 48
        },
        "end": {
          "line": 223,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6299,
      "end": 6300,
      "loc": {
        "start": {
          "line": 223,
          "column": 49
        },
        "end": {
          "line": 223,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6300,
      "end": 6301,
      "loc": {
        "start": {
          "line": 223,
          "column": 50
        },
        "end": {
          "line": 223,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6306,
      "end": 6307,
      "loc": {
        "start": {
          "line": 224,
          "column": 4
        },
        "end": {
          "line": 224,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6307,
      "end": 6308,
      "loc": {
        "start": {
          "line": 224,
          "column": 5
        },
        "end": {
          "line": 224,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_protocol_type",
      "start": 6314,
      "end": 6331,
      "loc": {
        "start": {
          "line": 226,
          "column": 4
        },
        "end": {
          "line": 226,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6331,
      "end": 6332,
      "loc": {
        "start": {
          "line": 226,
          "column": 21
        },
        "end": {
          "line": 226,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 6333,
      "end": 6341,
      "loc": {
        "start": {
          "line": 226,
          "column": 23
        },
        "end": {
          "line": 226,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6341,
      "end": 6342,
      "loc": {
        "start": {
          "line": 226,
          "column": 31
        },
        "end": {
          "line": 226,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6342,
      "end": 6347,
      "loc": {
        "start": {
          "line": 226,
          "column": 32
        },
        "end": {
          "line": 226,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6347,
      "end": 6348,
      "loc": {
        "start": {
          "line": 226,
          "column": 37
        },
        "end": {
          "line": 226,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6349,
      "end": 6359,
      "loc": {
        "start": {
          "line": 226,
          "column": 39
        },
        "end": {
          "line": 226,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6359,
      "end": 6360,
      "loc": {
        "start": {
          "line": 226,
          "column": 49
        },
        "end": {
          "line": 226,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6361,
      "end": 6362,
      "loc": {
        "start": {
          "line": 226,
          "column": 51
        },
        "end": {
          "line": 226,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6371,
      "end": 6373,
      "loc": {
        "start": {
          "line": 227,
          "column": 8
        },
        "end": {
          "line": 227,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6374,
      "end": 6375,
      "loc": {
        "start": {
          "line": 227,
          "column": 11
        },
        "end": {
          "line": 227,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6375,
      "end": 6379,
      "loc": {
        "start": {
          "line": 227,
          "column": 12
        },
        "end": {
          "line": 227,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6379,
      "end": 6380,
      "loc": {
        "start": {
          "line": 227,
          "column": 16
        },
        "end": {
          "line": 227,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 6380,
      "end": 6388,
      "loc": {
        "start": {
          "line": 227,
          "column": 17
        },
        "end": {
          "line": 227,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6388,
      "end": 6389,
      "loc": {
        "start": {
          "line": 227,
          "column": 25
        },
        "end": {
          "line": 227,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6389,
      "end": 6394,
      "loc": {
        "start": {
          "line": 227,
          "column": 26
        },
        "end": {
          "line": 227,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6394,
      "end": 6395,
      "loc": {
        "start": {
          "line": 227,
          "column": 31
        },
        "end": {
          "line": 227,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6395,
      "end": 6396,
      "loc": {
        "start": {
          "line": 227,
          "column": 32
        },
        "end": {
          "line": 227,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6397,
      "end": 6398,
      "loc": {
        "start": {
          "line": 227,
          "column": 34
        },
        "end": {
          "line": 227,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6411,
      "end": 6417,
      "loc": {
        "start": {
          "line": 228,
          "column": 12
        },
        "end": {
          "line": 228,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6418,
      "end": 6423,
      "loc": {
        "start": {
          "line": 228,
          "column": 19
        },
        "end": {
          "line": 228,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6423,
      "end": 6424,
      "loc": {
        "start": {
          "line": 228,
          "column": 24
        },
        "end": {
          "line": 228,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6433,
      "end": 6434,
      "loc": {
        "start": {
          "line": 229,
          "column": 8
        },
        "end": {
          "line": 229,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6443,
      "end": 6447,
      "loc": {
        "start": {
          "line": 230,
          "column": 8
        },
        "end": {
          "line": 230,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6447,
      "end": 6448,
      "loc": {
        "start": {
          "line": 230,
          "column": 12
        },
        "end": {
          "line": 230,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_id",
      "start": 6448,
      "end": 6465,
      "loc": {
        "start": {
          "line": 230,
          "column": 13
        },
        "end": {
          "line": 230,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6465,
      "end": 6466,
      "loc": {
        "start": {
          "line": 230,
          "column": 30
        },
        "end": {
          "line": 230,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6466,
      "end": 6471,
      "loc": {
        "start": {
          "line": 230,
          "column": 31
        },
        "end": {
          "line": 230,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6471,
      "end": 6472,
      "loc": {
        "start": {
          "line": 230,
          "column": 36
        },
        "end": {
          "line": 230,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6473,
      "end": 6483,
      "loc": {
        "start": {
          "line": 230,
          "column": 38
        },
        "end": {
          "line": 230,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6483,
      "end": 6484,
      "loc": {
        "start": {
          "line": 230,
          "column": 48
        },
        "end": {
          "line": 230,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6484,
      "end": 6485,
      "loc": {
        "start": {
          "line": 230,
          "column": 49
        },
        "end": {
          "line": 230,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 6494,
      "end": 6497,
      "loc": {
        "start": {
          "line": 231,
          "column": 8
        },
        "end": {
          "line": 231,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 6498,
      "end": 6504,
      "loc": {
        "start": {
          "line": 231,
          "column": 12
        },
        "end": {
          "line": 231,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6505,
      "end": 6506,
      "loc": {
        "start": {
          "line": 231,
          "column": 19
        },
        "end": {
          "line": 231,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6507,
      "end": 6512,
      "loc": {
        "start": {
          "line": 231,
          "column": 21
        },
        "end": {
          "line": 231,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6512,
      "end": 6513,
      "loc": {
        "start": {
          "line": 231,
          "column": 26
        },
        "end": {
          "line": 231,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 6513,
      "end": 6518,
      "loc": {
        "start": {
          "line": 231,
          "column": 27
        },
        "end": {
          "line": 231,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6518,
      "end": 6519,
      "loc": {
        "start": {
          "line": 231,
          "column": 32
        },
        "end": {
          "line": 231,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 6519,
      "end": 6522,
      "loc": {
        "start": {
          "line": 231,
          "column": 33
        },
        "end": {
          "line": 231,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6522,
      "end": 6523,
      "loc": {
        "start": {
          "line": 231,
          "column": 36
        },
        "end": {
          "line": 231,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6523,
      "end": 6524,
      "loc": {
        "start": {
          "line": 231,
          "column": 37
        },
        "end": {
          "line": 231,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6533,
      "end": 6539,
      "loc": {
        "start": {
          "line": 232,
          "column": 8
        },
        "end": {
          "line": 232,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6540,
      "end": 6544,
      "loc": {
        "start": {
          "line": 232,
          "column": 15
        },
        "end": {
          "line": 232,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6544,
      "end": 6545,
      "loc": {
        "start": {
          "line": 232,
          "column": 19
        },
        "end": {
          "line": 232,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 6545,
      "end": 6554,
      "loc": {
        "start": {
          "line": 232,
          "column": 20
        },
        "end": {
          "line": 232,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6554,
      "end": 6555,
      "loc": {
        "start": {
          "line": 232,
          "column": 29
        },
        "end": {
          "line": 232,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 6555,
      "end": 6561,
      "loc": {
        "start": {
          "line": 232,
          "column": 30
        },
        "end": {
          "line": 232,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6561,
      "end": 6562,
      "loc": {
        "start": {
          "line": 232,
          "column": 36
        },
        "end": {
          "line": 232,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 6562,
      "end": 6563,
      "loc": {
        "start": {
          "line": 232,
          "column": 37
        },
        "end": {
          "line": 232,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6563,
      "end": 6564,
      "loc": {
        "start": {
          "line": 232,
          "column": 38
        },
        "end": {
          "line": 232,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6564,
      "end": 6565,
      "loc": {
        "start": {
          "line": 232,
          "column": 39
        },
        "end": {
          "line": 232,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6565,
      "end": 6566,
      "loc": {
        "start": {
          "line": 232,
          "column": 40
        },
        "end": {
          "line": 232,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6571,
      "end": 6572,
      "loc": {
        "start": {
          "line": 233,
          "column": 4
        },
        "end": {
          "line": 233,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6572,
      "end": 6573,
      "loc": {
        "start": {
          "line": 233,
          "column": 5
        },
        "end": {
          "line": 233,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_protocol_type_name",
      "start": 6579,
      "end": 6601,
      "loc": {
        "start": {
          "line": 235,
          "column": 4
        },
        "end": {
          "line": 235,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6601,
      "end": 6602,
      "loc": {
        "start": {
          "line": 235,
          "column": 26
        },
        "end": {
          "line": 235,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6602,
      "end": 6607,
      "loc": {
        "start": {
          "line": 235,
          "column": 27
        },
        "end": {
          "line": 235,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6607,
      "end": 6608,
      "loc": {
        "start": {
          "line": 235,
          "column": 32
        },
        "end": {
          "line": 235,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6609,
      "end": 6619,
      "loc": {
        "start": {
          "line": 235,
          "column": 34
        },
        "end": {
          "line": 235,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6619,
      "end": 6620,
      "loc": {
        "start": {
          "line": 235,
          "column": 44
        },
        "end": {
          "line": 235,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6621,
      "end": 6622,
      "loc": {
        "start": {
          "line": 235,
          "column": 46
        },
        "end": {
          "line": 235,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6631,
      "end": 6633,
      "loc": {
        "start": {
          "line": 236,
          "column": 8
        },
        "end": {
          "line": 236,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6634,
      "end": 6635,
      "loc": {
        "start": {
          "line": 236,
          "column": 11
        },
        "end": {
          "line": 236,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6635,
      "end": 6639,
      "loc": {
        "start": {
          "line": 236,
          "column": 12
        },
        "end": {
          "line": 236,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6639,
      "end": 6640,
      "loc": {
        "start": {
          "line": 236,
          "column": 16
        },
        "end": {
          "line": 236,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 6640,
      "end": 6648,
      "loc": {
        "start": {
          "line": 236,
          "column": 17
        },
        "end": {
          "line": 236,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6648,
      "end": 6649,
      "loc": {
        "start": {
          "line": 236,
          "column": 25
        },
        "end": {
          "line": 236,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6649,
      "end": 6654,
      "loc": {
        "start": {
          "line": 236,
          "column": 26
        },
        "end": {
          "line": 236,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6654,
      "end": 6655,
      "loc": {
        "start": {
          "line": 236,
          "column": 31
        },
        "end": {
          "line": 236,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6655,
      "end": 6656,
      "loc": {
        "start": {
          "line": 236,
          "column": 32
        },
        "end": {
          "line": 236,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6657,
      "end": 6658,
      "loc": {
        "start": {
          "line": 236,
          "column": 34
        },
        "end": {
          "line": 236,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6671,
      "end": 6677,
      "loc": {
        "start": {
          "line": 237,
          "column": 12
        },
        "end": {
          "line": 237,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6678,
      "end": 6683,
      "loc": {
        "start": {
          "line": 237,
          "column": 19
        },
        "end": {
          "line": 237,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6683,
      "end": 6684,
      "loc": {
        "start": {
          "line": 237,
          "column": 24
        },
        "end": {
          "line": 237,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6693,
      "end": 6694,
      "loc": {
        "start": {
          "line": 238,
          "column": 8
        },
        "end": {
          "line": 238,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 6703,
      "end": 6706,
      "loc": {
        "start": {
          "line": 239,
          "column": 8
        },
        "end": {
          "line": 239,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type_id",
      "start": 6707,
      "end": 6714,
      "loc": {
        "start": {
          "line": 239,
          "column": 12
        },
        "end": {
          "line": 239,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6715,
      "end": 6716,
      "loc": {
        "start": {
          "line": 239,
          "column": 20
        },
        "end": {
          "line": 239,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6717,
      "end": 6721,
      "loc": {
        "start": {
          "line": 239,
          "column": 22
        },
        "end": {
          "line": 239,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6721,
      "end": 6722,
      "loc": {
        "start": {
          "line": 239,
          "column": 26
        },
        "end": {
          "line": 239,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_protocol_type",
      "start": 6722,
      "end": 6739,
      "loc": {
        "start": {
          "line": 239,
          "column": 27
        },
        "end": {
          "line": 239,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6739,
      "end": 6740,
      "loc": {
        "start": {
          "line": 239,
          "column": 44
        },
        "end": {
          "line": 239,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6740,
      "end": 6745,
      "loc": {
        "start": {
          "line": 239,
          "column": 45
        },
        "end": {
          "line": 239,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6745,
      "end": 6746,
      "loc": {
        "start": {
          "line": 239,
          "column": 50
        },
        "end": {
          "line": 239,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6747,
      "end": 6757,
      "loc": {
        "start": {
          "line": 239,
          "column": 52
        },
        "end": {
          "line": 239,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6757,
      "end": 6758,
      "loc": {
        "start": {
          "line": 239,
          "column": 62
        },
        "end": {
          "line": 239,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6758,
      "end": 6759,
      "loc": {
        "start": {
          "line": 239,
          "column": 63
        },
        "end": {
          "line": 239,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6768,
      "end": 6774,
      "loc": {
        "start": {
          "line": 240,
          "column": 8
        },
        "end": {
          "line": 240,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 6775,
      "end": 6781,
      "loc": {
        "start": {
          "line": 240,
          "column": 15
        },
        "end": {
          "line": 240,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6781,
      "end": 6782,
      "loc": {
        "start": {
          "line": 240,
          "column": 21
        },
        "end": {
          "line": 240,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 6782,
      "end": 6786,
      "loc": {
        "start": {
          "line": 240,
          "column": 22
        },
        "end": {
          "line": 240,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6786,
      "end": 6787,
      "loc": {
        "start": {
          "line": 240,
          "column": 26
        },
        "end": {
          "line": 240,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ChainTypes",
      "start": 6787,
      "end": 6797,
      "loc": {
        "start": {
          "line": 240,
          "column": 27
        },
        "end": {
          "line": 240,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6797,
      "end": 6798,
      "loc": {
        "start": {
          "line": 240,
          "column": 37
        },
        "end": {
          "line": 240,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "object_type",
      "start": 6798,
      "end": 6809,
      "loc": {
        "start": {
          "line": 240,
          "column": 38
        },
        "end": {
          "line": 240,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6809,
      "end": 6810,
      "loc": {
        "start": {
          "line": 240,
          "column": 49
        },
        "end": {
          "line": 240,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6810,
      "end": 6811,
      "loc": {
        "start": {
          "line": 240,
          "column": 50
        },
        "end": {
          "line": 240,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type_id",
      "start": 6811,
      "end": 6818,
      "loc": {
        "start": {
          "line": 240,
          "column": 51
        },
        "end": {
          "line": 240,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6818,
      "end": 6819,
      "loc": {
        "start": {
          "line": 240,
          "column": 58
        },
        "end": {
          "line": 240,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6819,
      "end": 6820,
      "loc": {
        "start": {
          "line": 240,
          "column": 59
        },
        "end": {
          "line": 240,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6825,
      "end": 6826,
      "loc": {
        "start": {
          "line": 241,
          "column": 4
        },
        "end": {
          "line": 241,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6826,
      "end": 6827,
      "loc": {
        "start": {
          "line": 241,
          "column": 5
        },
        "end": {
          "line": 241,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_implementation_type",
      "start": 6833,
      "end": 6860,
      "loc": {
        "start": {
          "line": 243,
          "column": 4
        },
        "end": {
          "line": 243,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6860,
      "end": 6861,
      "loc": {
        "start": {
          "line": 243,
          "column": 31
        },
        "end": {
          "line": 243,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 6862,
      "end": 6870,
      "loc": {
        "start": {
          "line": 243,
          "column": 33
        },
        "end": {
          "line": 243,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6870,
      "end": 6871,
      "loc": {
        "start": {
          "line": 243,
          "column": 41
        },
        "end": {
          "line": 243,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 6871,
      "end": 6875,
      "loc": {
        "start": {
          "line": 243,
          "column": 42
        },
        "end": {
          "line": 243,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6875,
      "end": 6876,
      "loc": {
        "start": {
          "line": 243,
          "column": 46
        },
        "end": {
          "line": 243,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6877,
      "end": 6882,
      "loc": {
        "start": {
          "line": 243,
          "column": 48
        },
        "end": {
          "line": 243,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6882,
      "end": 6883,
      "loc": {
        "start": {
          "line": 243,
          "column": 53
        },
        "end": {
          "line": 243,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6884,
      "end": 6894,
      "loc": {
        "start": {
          "line": 243,
          "column": 55
        },
        "end": {
          "line": 243,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6894,
      "end": 6895,
      "loc": {
        "start": {
          "line": 243,
          "column": 65
        },
        "end": {
          "line": 243,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6896,
      "end": 6897,
      "loc": {
        "start": {
          "line": 243,
          "column": 67
        },
        "end": {
          "line": 243,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6906,
      "end": 6910,
      "loc": {
        "start": {
          "line": 244,
          "column": 8
        },
        "end": {
          "line": 244,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6910,
      "end": 6911,
      "loc": {
        "start": {
          "line": 244,
          "column": 12
        },
        "end": {
          "line": 244,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 6911,
      "end": 6930,
      "loc": {
        "start": {
          "line": 244,
          "column": 13
        },
        "end": {
          "line": 244,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6930,
      "end": 6931,
      "loc": {
        "start": {
          "line": 244,
          "column": 32
        },
        "end": {
          "line": 244,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 6931,
      "end": 6932,
      "loc": {
        "start": {
          "line": 244,
          "column": 33
        },
        "end": {
          "line": 244,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6932,
      "end": 6933,
      "loc": {
        "start": {
          "line": 244,
          "column": 34
        },
        "end": {
          "line": 244,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 6934,
      "end": 6938,
      "loc": {
        "start": {
          "line": 244,
          "column": 36
        },
        "end": {
          "line": 244,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6938,
      "end": 6939,
      "loc": {
        "start": {
          "line": 244,
          "column": 40
        },
        "end": {
          "line": 244,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6940,
      "end": 6945,
      "loc": {
        "start": {
          "line": 244,
          "column": 42
        },
        "end": {
          "line": 244,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6945,
      "end": 6946,
      "loc": {
        "start": {
          "line": 244,
          "column": 47
        },
        "end": {
          "line": 244,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 6947,
      "end": 6957,
      "loc": {
        "start": {
          "line": 244,
          "column": 49
        },
        "end": {
          "line": 244,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6957,
      "end": 6958,
      "loc": {
        "start": {
          "line": 244,
          "column": 59
        },
        "end": {
          "line": 244,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6958,
      "end": 6959,
      "loc": {
        "start": {
          "line": 244,
          "column": 60
        },
        "end": {
          "line": 244,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 6968,
      "end": 6974,
      "loc": {
        "start": {
          "line": 245,
          "column": 8
        },
        "end": {
          "line": 245,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 6975,
      "end": 6980,
      "loc": {
        "start": {
          "line": 245,
          "column": 15
        },
        "end": {
          "line": 245,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6980,
      "end": 6981,
      "loc": {
        "start": {
          "line": 245,
          "column": 20
        },
        "end": {
          "line": 245,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6986,
      "end": 6987,
      "loc": {
        "start": {
          "line": 246,
          "column": 4
        },
        "end": {
          "line": 246,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6987,
      "end": 6988,
      "loc": {
        "start": {
          "line": 246,
          "column": 5
        },
        "end": {
          "line": 246,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get_implementation_instance",
      "start": 6994,
      "end": 7021,
      "loc": {
        "start": {
          "line": 248,
          "column": 4
        },
        "end": {
          "line": 248,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7021,
      "end": 7022,
      "loc": {
        "start": {
          "line": 248,
          "column": 31
        },
        "end": {
          "line": 248,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "function",
        "keyword": "function",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "function",
      "start": 7023,
      "end": 7031,
      "loc": {
        "start": {
          "line": 248,
          "column": 33
        },
        "end": {
          "line": 248,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7031,
      "end": 7032,
      "loc": {
        "start": {
          "line": 248,
          "column": 41
        },
        "end": {
          "line": 248,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 7032,
      "end": 7036,
      "loc": {
        "start": {
          "line": 248,
          "column": 42
        },
        "end": {
          "line": 248,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7036,
      "end": 7037,
      "loc": {
        "start": {
          "line": 248,
          "column": 46
        },
        "end": {
          "line": 248,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7038,
      "end": 7043,
      "loc": {
        "start": {
          "line": 248,
          "column": 48
        },
        "end": {
          "line": 248,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7043,
      "end": 7044,
      "loc": {
        "start": {
          "line": 248,
          "column": 53
        },
        "end": {
          "line": 248,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7045,
      "end": 7055,
      "loc": {
        "start": {
          "line": 248,
          "column": 55
        },
        "end": {
          "line": 248,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7055,
      "end": 7056,
      "loc": {
        "start": {
          "line": 248,
          "column": 65
        },
        "end": {
          "line": 248,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7057,
      "end": 7058,
      "loc": {
        "start": {
          "line": 248,
          "column": 67
        },
        "end": {
          "line": 248,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7067,
      "end": 7069,
      "loc": {
        "start": {
          "line": 249,
          "column": 8
        },
        "end": {
          "line": 249,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7070,
      "end": 7071,
      "loc": {
        "start": {
          "line": 249,
          "column": 11
        },
        "end": {
          "line": 249,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7071,
      "end": 7075,
      "loc": {
        "start": {
          "line": 249,
          "column": 12
        },
        "end": {
          "line": 249,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7075,
      "end": 7076,
      "loc": {
        "start": {
          "line": 249,
          "column": 16
        },
        "end": {
          "line": 249,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "is_empty",
      "start": 7076,
      "end": 7084,
      "loc": {
        "start": {
          "line": 249,
          "column": 17
        },
        "end": {
          "line": 249,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7084,
      "end": 7085,
      "loc": {
        "start": {
          "line": 249,
          "column": 25
        },
        "end": {
          "line": 249,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7085,
      "end": 7090,
      "loc": {
        "start": {
          "line": 249,
          "column": 26
        },
        "end": {
          "line": 249,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7090,
      "end": 7091,
      "loc": {
        "start": {
          "line": 249,
          "column": 31
        },
        "end": {
          "line": 249,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7091,
      "end": 7092,
      "loc": {
        "start": {
          "line": 249,
          "column": 32
        },
        "end": {
          "line": 249,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7093,
      "end": 7094,
      "loc": {
        "start": {
          "line": 249,
          "column": 34
        },
        "end": {
          "line": 249,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7107,
      "end": 7113,
      "loc": {
        "start": {
          "line": 250,
          "column": 12
        },
        "end": {
          "line": 250,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7114,
      "end": 7119,
      "loc": {
        "start": {
          "line": 250,
          "column": 19
        },
        "end": {
          "line": 250,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7119,
      "end": 7120,
      "loc": {
        "start": {
          "line": 250,
          "column": 24
        },
        "end": {
          "line": 250,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7129,
      "end": 7130,
      "loc": {
        "start": {
          "line": 251,
          "column": 8
        },
        "end": {
          "line": 251,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7139,
      "end": 7143,
      "loc": {
        "start": {
          "line": 252,
          "column": 8
        },
        "end": {
          "line": 252,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7143,
      "end": 7144,
      "loc": {
        "start": {
          "line": 252,
          "column": 12
        },
        "end": {
          "line": 252,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require_object_type",
      "start": 7144,
      "end": 7163,
      "loc": {
        "start": {
          "line": 252,
          "column": 13
        },
        "end": {
          "line": 252,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7163,
      "end": 7164,
      "loc": {
        "start": {
          "line": 252,
          "column": 32
        },
        "end": {
          "line": 252,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 7164,
      "end": 7165,
      "loc": {
        "start": {
          "line": 252,
          "column": 33
        },
        "end": {
          "line": 252,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7165,
      "end": 7166,
      "loc": {
        "start": {
          "line": 252,
          "column": 34
        },
        "end": {
          "line": 252,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 7167,
      "end": 7171,
      "loc": {
        "start": {
          "line": 252,
          "column": 36
        },
        "end": {
          "line": 252,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7171,
      "end": 7172,
      "loc": {
        "start": {
          "line": 252,
          "column": 40
        },
        "end": {
          "line": 252,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7173,
      "end": 7178,
      "loc": {
        "start": {
          "line": 252,
          "column": 42
        },
        "end": {
          "line": 252,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7178,
      "end": 7179,
      "loc": {
        "start": {
          "line": 252,
          "column": 47
        },
        "end": {
          "line": 252,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7180,
      "end": 7190,
      "loc": {
        "start": {
          "line": 252,
          "column": 49
        },
        "end": {
          "line": 252,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7190,
      "end": 7191,
      "loc": {
        "start": {
          "line": 252,
          "column": 59
        },
        "end": {
          "line": 252,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7191,
      "end": 7192,
      "loc": {
        "start": {
          "line": 252,
          "column": 60
        },
        "end": {
          "line": 252,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7201,
      "end": 7207,
      "loc": {
        "start": {
          "line": 253,
          "column": 8
        },
        "end": {
          "line": 253,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7208,
      "end": 7212,
      "loc": {
        "start": {
          "line": 253,
          "column": 15
        },
        "end": {
          "line": 253,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7212,
      "end": 7213,
      "loc": {
        "start": {
          "line": 253,
          "column": 19
        },
        "end": {
          "line": 253,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "to_number",
      "start": 7213,
      "end": 7222,
      "loc": {
        "start": {
          "line": 253,
          "column": 20
        },
        "end": {
          "line": 253,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7222,
      "end": 7223,
      "loc": {
        "start": {
          "line": 253,
          "column": 29
        },
        "end": {
          "line": 253,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7223,
      "end": 7228,
      "loc": {
        "start": {
          "line": 253,
          "column": 30
        },
        "end": {
          "line": 253,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7228,
      "end": 7229,
      "loc": {
        "start": {
          "line": 253,
          "column": 35
        },
        "end": {
          "line": 253,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 7229,
      "end": 7234,
      "loc": {
        "start": {
          "line": 253,
          "column": 36
        },
        "end": {
          "line": 253,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7234,
      "end": 7235,
      "loc": {
        "start": {
          "line": 253,
          "column": 41
        },
        "end": {
          "line": 253,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 7235,
      "end": 7238,
      "loc": {
        "start": {
          "line": 253,
          "column": 42
        },
        "end": {
          "line": 253,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7238,
      "end": 7239,
      "loc": {
        "start": {
          "line": 253,
          "column": 45
        },
        "end": {
          "line": 253,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7239,
      "end": 7240,
      "loc": {
        "start": {
          "line": 253,
          "column": 46
        },
        "end": {
          "line": 253,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 7240,
      "end": 7241,
      "loc": {
        "start": {
          "line": 253,
          "column": 47
        },
        "end": {
          "line": 253,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7241,
      "end": 7242,
      "loc": {
        "start": {
          "line": 253,
          "column": 48
        },
        "end": {
          "line": 253,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7242,
      "end": 7243,
      "loc": {
        "start": {
          "line": 253,
          "column": 49
        },
        "end": {
          "line": 253,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7243,
      "end": 7244,
      "loc": {
        "start": {
          "line": 253,
          "column": 50
        },
        "end": {
          "line": 253,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7249,
      "end": 7250,
      "loc": {
        "start": {
          "line": 254,
          "column": 4
        },
        "end": {
          "line": 254,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7250,
      "end": 7251,
      "loc": {
        "start": {
          "line": 254,
          "column": 5
        },
        "end": {
          "line": 254,
          "column": 6
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " signed / unsigned decimal",
      "start": 7257,
      "end": 7285,
      "loc": {
        "start": {
          "line": 256,
          "column": 4
        },
        "end": {
          "line": 256,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow53",
      "start": 7290,
      "end": 7303,
      "loc": {
        "start": {
          "line": 257,
          "column": 4
        },
        "end": {
          "line": 257,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7303,
      "end": 7304,
      "loc": {
        "start": {
          "line": 257,
          "column": 17
        },
        "end": {
          "line": 257,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7304,
      "end": 7309,
      "loc": {
        "start": {
          "line": 257,
          "column": 18
        },
        "end": {
          "line": 257,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7309,
      "end": 7310,
      "loc": {
        "start": {
          "line": 257,
          "column": 23
        },
        "end": {
          "line": 257,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7311,
      "end": 7321,
      "loc": {
        "start": {
          "line": 257,
          "column": 25
        },
        "end": {
          "line": 257,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7322,
      "end": 7323,
      "loc": {
        "start": {
          "line": 257,
          "column": 36
        },
        "end": {
          "line": 257,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 7324,
      "end": 7326,
      "loc": {
        "start": {
          "line": 257,
          "column": 38
        },
        "end": {
          "line": 257,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7326,
      "end": 7327,
      "loc": {
        "start": {
          "line": 257,
          "column": 40
        },
        "end": {
          "line": 257,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7328,
      "end": 7329,
      "loc": {
        "start": {
          "line": 257,
          "column": 42
        },
        "end": {
          "line": 257,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7338,
      "end": 7340,
      "loc": {
        "start": {
          "line": 258,
          "column": 8
        },
        "end": {
          "line": 258,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7341,
      "end": 7342,
      "loc": {
        "start": {
          "line": 258,
          "column": 11
        },
        "end": {
          "line": 258,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 7342,
      "end": 7348,
      "loc": {
        "start": {
          "line": 258,
          "column": 12
        },
        "end": {
          "line": 258,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7349,
      "end": 7354,
      "loc": {
        "start": {
          "line": 258,
          "column": 19
        },
        "end": {
          "line": 258,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 7355,
      "end": 7358,
      "loc": {
        "start": {
          "line": 258,
          "column": 25
        },
        "end": {
          "line": 258,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 7359,
      "end": 7367,
      "loc": {
        "start": {
          "line": 258,
          "column": 29
        },
        "end": {
          "line": 258,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7367,
      "end": 7368,
      "loc": {
        "start": {
          "line": 258,
          "column": 37
        },
        "end": {
          "line": 258,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7369,
      "end": 7370,
      "loc": {
        "start": {
          "line": 258,
          "column": 39
        },
        "end": {
          "line": 258,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7383,
      "end": 7385,
      "loc": {
        "start": {
          "line": 259,
          "column": 12
        },
        "end": {
          "line": 259,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7386,
      "end": 7387,
      "loc": {
        "start": {
          "line": 259,
          "column": 15
        },
        "end": {
          "line": 259,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7387,
      "end": 7392,
      "loc": {
        "start": {
          "line": 259,
          "column": 16
        },
        "end": {
          "line": 259,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 7393,
      "end": 7394,
      "loc": {
        "start": {
          "line": 259,
          "column": 22
        },
        "end": {
          "line": 259,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MAX_SAFE_INT",
      "start": 7395,
      "end": 7407,
      "loc": {
        "start": {
          "line": 259,
          "column": 24
        },
        "end": {
          "line": 259,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 7408,
      "end": 7410,
      "loc": {
        "start": {
          "line": 259,
          "column": 37
        },
        "end": {
          "line": 259,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7411,
      "end": 7416,
      "loc": {
        "start": {
          "line": 259,
          "column": 40
        },
        "end": {
          "line": 259,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 7417,
      "end": 7418,
      "loc": {
        "start": {
          "line": 259,
          "column": 46
        },
        "end": {
          "line": 259,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MIN_SAFE_INT",
      "start": 7419,
      "end": 7431,
      "loc": {
        "start": {
          "line": 259,
          "column": 48
        },
        "end": {
          "line": 259,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7431,
      "end": 7432,
      "loc": {
        "start": {
          "line": 259,
          "column": 60
        },
        "end": {
          "line": 259,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7433,
      "end": 7434,
      "loc": {
        "start": {
          "line": 259,
          "column": 62
        },
        "end": {
          "line": 259,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 7451,
      "end": 7456,
      "loc": {
        "start": {
          "line": 260,
          "column": 16
        },
        "end": {
          "line": 260,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 7457,
      "end": 7460,
      "loc": {
        "start": {
          "line": 260,
          "column": 22
        },
        "end": {
          "line": 260,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 7461,
      "end": 7466,
      "loc": {
        "start": {
          "line": 260,
          "column": 26
        },
        "end": {
          "line": 260,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7466,
      "end": 7467,
      "loc": {
        "start": {
          "line": 260,
          "column": 31
        },
        "end": {
          "line": 260,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7467,
      "end": 7468,
      "loc": {
        "start": {
          "line": 260,
          "column": 32
        },
        "end": {
          "line": 260,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "overflow ",
      "start": 7468,
      "end": 7477,
      "loc": {
        "start": {
          "line": 260,
          "column": 33
        },
        "end": {
          "line": 260,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7477,
      "end": 7479,
      "loc": {
        "start": {
          "line": 260,
          "column": 42
        },
        "end": {
          "line": 260,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7479,
      "end": 7489,
      "loc": {
        "start": {
          "line": 260,
          "column": 44
        },
        "end": {
          "line": 260,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7489,
      "end": 7490,
      "loc": {
        "start": {
          "line": 260,
          "column": 54
        },
        "end": {
          "line": 260,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 7490,
      "end": 7491,
      "loc": {
        "start": {
          "line": 260,
          "column": 55
        },
        "end": {
          "line": 260,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7491,
      "end": 7493,
      "loc": {
        "start": {
          "line": 260,
          "column": 56
        },
        "end": {
          "line": 260,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7493,
      "end": 7498,
      "loc": {
        "start": {
          "line": 260,
          "column": 58
        },
        "end": {
          "line": 260,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7498,
      "end": 7499,
      "loc": {
        "start": {
          "line": 260,
          "column": 63
        },
        "end": {
          "line": 260,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 7499,
      "end": 7499,
      "loc": {
        "start": {
          "line": 260,
          "column": 64
        },
        "end": {
          "line": 260,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7499,
      "end": 7500,
      "loc": {
        "start": {
          "line": 260,
          "column": 64
        },
        "end": {
          "line": 260,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7500,
      "end": 7501,
      "loc": {
        "start": {
          "line": 260,
          "column": 65
        },
        "end": {
          "line": 260,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7501,
      "end": 7502,
      "loc": {
        "start": {
          "line": 260,
          "column": 66
        },
        "end": {
          "line": 260,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7515,
      "end": 7516,
      "loc": {
        "start": {
          "line": 261,
          "column": 12
        },
        "end": {
          "line": 261,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7529,
      "end": 7535,
      "loc": {
        "start": {
          "line": 262,
          "column": 12
        },
        "end": {
          "line": 262,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7535,
      "end": 7536,
      "loc": {
        "start": {
          "line": 262,
          "column": 18
        },
        "end": {
          "line": 262,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7545,
      "end": 7546,
      "loc": {
        "start": {
          "line": 263,
          "column": 8
        },
        "end": {
          "line": 263,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7555,
      "end": 7557,
      "loc": {
        "start": {
          "line": 264,
          "column": 8
        },
        "end": {
          "line": 264,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7558,
      "end": 7559,
      "loc": {
        "start": {
          "line": 264,
          "column": 11
        },
        "end": {
          "line": 264,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 7559,
      "end": 7565,
      "loc": {
        "start": {
          "line": 264,
          "column": 12
        },
        "end": {
          "line": 264,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7566,
      "end": 7571,
      "loc": {
        "start": {
          "line": 264,
          "column": 19
        },
        "end": {
          "line": 264,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 7572,
      "end": 7575,
      "loc": {
        "start": {
          "line": 264,
          "column": 25
        },
        "end": {
          "line": 264,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string",
      "start": 7576,
      "end": 7584,
      "loc": {
        "start": {
          "line": 264,
          "column": 29
        },
        "end": {
          "line": 264,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7584,
      "end": 7585,
      "loc": {
        "start": {
          "line": 264,
          "column": 37
        },
        "end": {
          "line": 264,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7586,
      "end": 7587,
      "loc": {
        "start": {
          "line": 264,
          "column": 39
        },
        "end": {
          "line": 264,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 7600,
      "end": 7603,
      "loc": {
        "start": {
          "line": 265,
          "column": 12
        },
        "end": {
          "line": 265,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "int",
      "start": 7604,
      "end": 7607,
      "loc": {
        "start": {
          "line": 265,
          "column": 16
        },
        "end": {
          "line": 265,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7608,
      "end": 7609,
      "loc": {
        "start": {
          "line": 265,
          "column": 20
        },
        "end": {
          "line": 265,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parseInt",
      "start": 7610,
      "end": 7618,
      "loc": {
        "start": {
          "line": 265,
          "column": 22
        },
        "end": {
          "line": 265,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7618,
      "end": 7619,
      "loc": {
        "start": {
          "line": 265,
          "column": 30
        },
        "end": {
          "line": 265,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7619,
      "end": 7624,
      "loc": {
        "start": {
          "line": 265,
          "column": 31
        },
        "end": {
          "line": 265,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7624,
      "end": 7625,
      "loc": {
        "start": {
          "line": 265,
          "column": 36
        },
        "end": {
          "line": 265,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7625,
      "end": 7626,
      "loc": {
        "start": {
          "line": 265,
          "column": 37
        },
        "end": {
          "line": 265,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7639,
      "end": 7641,
      "loc": {
        "start": {
          "line": 266,
          "column": 12
        },
        "end": {
          "line": 266,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7642,
      "end": 7643,
      "loc": {
        "start": {
          "line": 266,
          "column": 15
        },
        "end": {
          "line": 266,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7643,
      "end": 7648,
      "loc": {
        "start": {
          "line": 266,
          "column": 16
        },
        "end": {
          "line": 266,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 7649,
      "end": 7650,
      "loc": {
        "start": {
          "line": 266,
          "column": 22
        },
        "end": {
          "line": 266,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MAX_SAFE_INT",
      "start": 7651,
      "end": 7663,
      "loc": {
        "start": {
          "line": 266,
          "column": 24
        },
        "end": {
          "line": 266,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 7664,
      "end": 7666,
      "loc": {
        "start": {
          "line": 266,
          "column": 37
        },
        "end": {
          "line": 266,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7667,
      "end": 7672,
      "loc": {
        "start": {
          "line": 266,
          "column": 40
        },
        "end": {
          "line": 266,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 7673,
      "end": 7674,
      "loc": {
        "start": {
          "line": 266,
          "column": 46
        },
        "end": {
          "line": 266,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MIN_SAFE_INT",
      "start": 7675,
      "end": 7687,
      "loc": {
        "start": {
          "line": 266,
          "column": 48
        },
        "end": {
          "line": 266,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7687,
      "end": 7688,
      "loc": {
        "start": {
          "line": 266,
          "column": 60
        },
        "end": {
          "line": 266,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7689,
      "end": 7690,
      "loc": {
        "start": {
          "line": 266,
          "column": 62
        },
        "end": {
          "line": 266,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 7707,
      "end": 7712,
      "loc": {
        "start": {
          "line": 267,
          "column": 16
        },
        "end": {
          "line": 267,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 7713,
      "end": 7716,
      "loc": {
        "start": {
          "line": 267,
          "column": 22
        },
        "end": {
          "line": 267,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 7717,
      "end": 7722,
      "loc": {
        "start": {
          "line": 267,
          "column": 26
        },
        "end": {
          "line": 267,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7722,
      "end": 7723,
      "loc": {
        "start": {
          "line": 267,
          "column": 31
        },
        "end": {
          "line": 267,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7723,
      "end": 7724,
      "loc": {
        "start": {
          "line": 267,
          "column": 32
        },
        "end": {
          "line": 267,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "overflow ",
      "start": 7724,
      "end": 7733,
      "loc": {
        "start": {
          "line": 267,
          "column": 33
        },
        "end": {
          "line": 267,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7733,
      "end": 7735,
      "loc": {
        "start": {
          "line": 267,
          "column": 42
        },
        "end": {
          "line": 267,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7735,
      "end": 7745,
      "loc": {
        "start": {
          "line": 267,
          "column": 44
        },
        "end": {
          "line": 267,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7745,
      "end": 7746,
      "loc": {
        "start": {
          "line": 267,
          "column": 54
        },
        "end": {
          "line": 267,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 7746,
      "end": 7747,
      "loc": {
        "start": {
          "line": 267,
          "column": 55
        },
        "end": {
          "line": 267,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7747,
      "end": 7749,
      "loc": {
        "start": {
          "line": 267,
          "column": 56
        },
        "end": {
          "line": 267,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7749,
      "end": 7754,
      "loc": {
        "start": {
          "line": 267,
          "column": 58
        },
        "end": {
          "line": 267,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7754,
      "end": 7755,
      "loc": {
        "start": {
          "line": 267,
          "column": 63
        },
        "end": {
          "line": 267,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 7755,
      "end": 7755,
      "loc": {
        "start": {
          "line": 267,
          "column": 64
        },
        "end": {
          "line": 267,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7755,
      "end": 7756,
      "loc": {
        "start": {
          "line": 267,
          "column": 64
        },
        "end": {
          "line": 267,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7756,
      "end": 7757,
      "loc": {
        "start": {
          "line": 267,
          "column": 65
        },
        "end": {
          "line": 267,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7757,
      "end": 7758,
      "loc": {
        "start": {
          "line": 267,
          "column": 66
        },
        "end": {
          "line": 267,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7771,
      "end": 7772,
      "loc": {
        "start": {
          "line": 268,
          "column": 12
        },
        "end": {
          "line": 268,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7785,
      "end": 7791,
      "loc": {
        "start": {
          "line": 269,
          "column": 12
        },
        "end": {
          "line": 269,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7791,
      "end": 7792,
      "loc": {
        "start": {
          "line": 269,
          "column": 18
        },
        "end": {
          "line": 269,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7801,
      "end": 7802,
      "loc": {
        "start": {
          "line": 270,
          "column": 8
        },
        "end": {
          "line": 270,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7811,
      "end": 7813,
      "loc": {
        "start": {
          "line": 271,
          "column": 8
        },
        "end": {
          "line": 271,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7814,
      "end": 7815,
      "loc": {
        "start": {
          "line": 271,
          "column": 11
        },
        "end": {
          "line": 271,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 7815,
      "end": 7819,
      "loc": {
        "start": {
          "line": 271,
          "column": 12
        },
        "end": {
          "line": 271,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7819,
      "end": 7820,
      "loc": {
        "start": {
          "line": 271,
          "column": 16
        },
        "end": {
          "line": 271,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isLong",
      "start": 7820,
      "end": 7826,
      "loc": {
        "start": {
          "line": 271,
          "column": 17
        },
        "end": {
          "line": 271,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7826,
      "end": 7827,
      "loc": {
        "start": {
          "line": 271,
          "column": 23
        },
        "end": {
          "line": 271,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7827,
      "end": 7832,
      "loc": {
        "start": {
          "line": 271,
          "column": 24
        },
        "end": {
          "line": 271,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7832,
      "end": 7833,
      "loc": {
        "start": {
          "line": 271,
          "column": 29
        },
        "end": {
          "line": 271,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7833,
      "end": 7834,
      "loc": {
        "start": {
          "line": 271,
          "column": 30
        },
        "end": {
          "line": 271,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7835,
      "end": 7836,
      "loc": {
        "start": {
          "line": 271,
          "column": 32
        },
        "end": {
          "line": 271,
          "column": 33
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " typeof value.toInt() is 'number'",
      "start": 7849,
      "end": 7884,
      "loc": {
        "start": {
          "line": 272,
          "column": 12
        },
        "end": {
          "line": 272,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7897,
      "end": 7901,
      "loc": {
        "start": {
          "line": 273,
          "column": 12
        },
        "end": {
          "line": 273,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7901,
      "end": 7902,
      "loc": {
        "start": {
          "line": 273,
          "column": 16
        },
        "end": {
          "line": 273,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow53",
      "start": 7902,
      "end": 7915,
      "loc": {
        "start": {
          "line": 273,
          "column": 17
        },
        "end": {
          "line": 273,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7915,
      "end": 7916,
      "loc": {
        "start": {
          "line": 273,
          "column": 30
        },
        "end": {
          "line": 273,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 7916,
      "end": 7921,
      "loc": {
        "start": {
          "line": 273,
          "column": 31
        },
        "end": {
          "line": 273,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7921,
      "end": 7922,
      "loc": {
        "start": {
          "line": 273,
          "column": 36
        },
        "end": {
          "line": 273,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toInt",
      "start": 7922,
      "end": 7927,
      "loc": {
        "start": {
          "line": 273,
          "column": 37
        },
        "end": {
          "line": 273,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7927,
      "end": 7928,
      "loc": {
        "start": {
          "line": 273,
          "column": 42
        },
        "end": {
          "line": 273,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7928,
      "end": 7929,
      "loc": {
        "start": {
          "line": 273,
          "column": 43
        },
        "end": {
          "line": 273,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7929,
      "end": 7930,
      "loc": {
        "start": {
          "line": 273,
          "column": 44
        },
        "end": {
          "line": 273,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 7931,
      "end": 7941,
      "loc": {
        "start": {
          "line": 273,
          "column": 46
        },
        "end": {
          "line": 273,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7941,
      "end": 7942,
      "loc": {
        "start": {
          "line": 273,
          "column": 56
        },
        "end": {
          "line": 273,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7942,
      "end": 7943,
      "loc": {
        "start": {
          "line": 273,
          "column": 57
        },
        "end": {
          "line": 273,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7956,
      "end": 7962,
      "loc": {
        "start": {
          "line": 274,
          "column": 12
        },
        "end": {
          "line": 274,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7962,
      "end": 7963,
      "loc": {
        "start": {
          "line": 274,
          "column": 18
        },
        "end": {
          "line": 274,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7972,
      "end": 7973,
      "loc": {
        "start": {
          "line": 275,
          "column": 8
        },
        "end": {
          "line": 275,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 7982,
      "end": 7987,
      "loc": {
        "start": {
          "line": 276,
          "column": 8
        },
        "end": {
          "line": 276,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7988,
      "end": 7989,
      "loc": {
        "start": {
          "line": 276,
          "column": 14
        },
        "end": {
          "line": 276,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unsupported type ",
      "start": 7989,
      "end": 8006,
      "loc": {
        "start": {
          "line": 276,
          "column": 15
        },
        "end": {
          "line": 276,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8006,
      "end": 8008,
      "loc": {
        "start": {
          "line": 276,
          "column": 32
        },
        "end": {
          "line": 276,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 8008,
      "end": 8018,
      "loc": {
        "start": {
          "line": 276,
          "column": 34
        },
        "end": {
          "line": 276,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8018,
      "end": 8019,
      "loc": {
        "start": {
          "line": 276,
          "column": 44
        },
        "end": {
          "line": 276,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ": (",
      "start": 8019,
      "end": 8022,
      "loc": {
        "start": {
          "line": 276,
          "column": 45
        },
        "end": {
          "line": 276,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8022,
      "end": 8024,
      "loc": {
        "start": {
          "line": 276,
          "column": 48
        },
        "end": {
          "line": 276,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 8024,
      "end": 8030,
      "loc": {
        "start": {
          "line": 276,
          "column": 50
        },
        "end": {
          "line": 276,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8031,
      "end": 8036,
      "loc": {
        "start": {
          "line": 276,
          "column": 57
        },
        "end": {
          "line": 276,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8036,
      "end": 8037,
      "loc": {
        "start": {
          "line": 276,
          "column": 62
        },
        "end": {
          "line": 276,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ") ",
      "start": 8037,
      "end": 8039,
      "loc": {
        "start": {
          "line": 276,
          "column": 63
        },
        "end": {
          "line": 276,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8039,
      "end": 8041,
      "loc": {
        "start": {
          "line": 276,
          "column": 65
        },
        "end": {
          "line": 276,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8041,
      "end": 8046,
      "loc": {
        "start": {
          "line": 276,
          "column": 67
        },
        "end": {
          "line": 276,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8046,
      "end": 8047,
      "loc": {
        "start": {
          "line": 276,
          "column": 72
        },
        "end": {
          "line": 276,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 8047,
      "end": 8047,
      "loc": {
        "start": {
          "line": 276,
          "column": 73
        },
        "end": {
          "line": 276,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8047,
      "end": 8048,
      "loc": {
        "start": {
          "line": 276,
          "column": 73
        },
        "end": {
          "line": 276,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8048,
      "end": 8049,
      "loc": {
        "start": {
          "line": 276,
          "column": 74
        },
        "end": {
          "line": 276,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8054,
      "end": 8055,
      "loc": {
        "start": {
          "line": 277,
          "column": 4
        },
        "end": {
          "line": 277,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8055,
      "end": 8056,
      "loc": {
        "start": {
          "line": 277,
          "column": 5
        },
        "end": {
          "line": 277,
          "column": 6
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " signed / unsigned whole numbers only",
      "start": 8062,
      "end": 8101,
      "loc": {
        "start": {
          "line": 279,
          "column": 4
        },
        "end": {
          "line": 279,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow64",
      "start": 8106,
      "end": 8119,
      "loc": {
        "start": {
          "line": 280,
          "column": 4
        },
        "end": {
          "line": 280,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8119,
      "end": 8120,
      "loc": {
        "start": {
          "line": 280,
          "column": 17
        },
        "end": {
          "line": 280,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8120,
      "end": 8125,
      "loc": {
        "start": {
          "line": 280,
          "column": 18
        },
        "end": {
          "line": 280,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8125,
      "end": 8126,
      "loc": {
        "start": {
          "line": 280,
          "column": 23
        },
        "end": {
          "line": 280,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 8127,
      "end": 8137,
      "loc": {
        "start": {
          "line": 280,
          "column": 25
        },
        "end": {
          "line": 280,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8138,
      "end": 8139,
      "loc": {
        "start": {
          "line": 280,
          "column": 36
        },
        "end": {
          "line": 280,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 8140,
      "end": 8142,
      "loc": {
        "start": {
          "line": 280,
          "column": 38
        },
        "end": {
          "line": 280,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8142,
      "end": 8143,
      "loc": {
        "start": {
          "line": 280,
          "column": 40
        },
        "end": {
          "line": 280,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 8144,
      "end": 8152,
      "loc": {
        "start": {
          "line": 280,
          "column": 42
        },
        "end": {
          "line": 280,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8153,
      "end": 8154,
      "loc": {
        "start": {
          "line": 280,
          "column": 51
        },
        "end": {
          "line": 280,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 8155,
      "end": 8160,
      "loc": {
        "start": {
          "line": 280,
          "column": 53
        },
        "end": {
          "line": 280,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8160,
      "end": 8161,
      "loc": {
        "start": {
          "line": 280,
          "column": 58
        },
        "end": {
          "line": 280,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8162,
      "end": 8163,
      "loc": {
        "start": {
          "line": 280,
          "column": 60
        },
        "end": {
          "line": 280,
          "column": 61
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " https://github.com/dcodeIO/Long.js/issues/20",
      "start": 8172,
      "end": 8219,
      "loc": {
        "start": {
          "line": 281,
          "column": 8
        },
        "end": {
          "line": 281,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8228,
      "end": 8230,
      "loc": {
        "start": {
          "line": 282,
          "column": 8
        },
        "end": {
          "line": 282,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8231,
      "end": 8232,
      "loc": {
        "start": {
          "line": 282,
          "column": 11
        },
        "end": {
          "line": 282,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 8232,
      "end": 8236,
      "loc": {
        "start": {
          "line": 282,
          "column": 12
        },
        "end": {
          "line": 282,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8236,
      "end": 8237,
      "loc": {
        "start": {
          "line": 282,
          "column": 16
        },
        "end": {
          "line": 282,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isLong",
      "start": 8237,
      "end": 8243,
      "loc": {
        "start": {
          "line": 282,
          "column": 17
        },
        "end": {
          "line": 282,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8243,
      "end": 8244,
      "loc": {
        "start": {
          "line": 282,
          "column": 23
        },
        "end": {
          "line": 282,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8244,
      "end": 8249,
      "loc": {
        "start": {
          "line": 282,
          "column": 24
        },
        "end": {
          "line": 282,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8249,
      "end": 8250,
      "loc": {
        "start": {
          "line": 282,
          "column": 29
        },
        "end": {
          "line": 282,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8250,
      "end": 8251,
      "loc": {
        "start": {
          "line": 282,
          "column": 30
        },
        "end": {
          "line": 282,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8252,
      "end": 8253,
      "loc": {
        "start": {
          "line": 282,
          "column": 32
        },
        "end": {
          "line": 282,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 8266,
      "end": 8272,
      "loc": {
        "start": {
          "line": 283,
          "column": 12
        },
        "end": {
          "line": 283,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8272,
      "end": 8273,
      "loc": {
        "start": {
          "line": 283,
          "column": 18
        },
        "end": {
          "line": 283,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8282,
      "end": 8283,
      "loc": {
        "start": {
          "line": 284,
          "column": 8
        },
        "end": {
          "line": 284,
          "column": 9
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " BigInteger#isBigInteger https://github.com/cryptocoinjs/bigi/issues/20",
      "start": 8293,
      "end": 8366,
      "loc": {
        "start": {
          "line": 286,
          "column": 8
        },
        "end": {
          "line": 286,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8375,
      "end": 8377,
      "loc": {
        "start": {
          "line": 287,
          "column": 8
        },
        "end": {
          "line": 287,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8378,
      "end": 8379,
      "loc": {
        "start": {
          "line": 287,
          "column": 11
        },
        "end": {
          "line": 287,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8379,
      "end": 8384,
      "loc": {
        "start": {
          "line": 287,
          "column": 12
        },
        "end": {
          "line": 287,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8384,
      "end": 8385,
      "loc": {
        "start": {
          "line": 287,
          "column": 17
        },
        "end": {
          "line": 287,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "t",
      "start": 8385,
      "end": 8386,
      "loc": {
        "start": {
          "line": 287,
          "column": 18
        },
        "end": {
          "line": 287,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 8387,
      "end": 8390,
      "loc": {
        "start": {
          "line": 287,
          "column": 20
        },
        "end": {
          "line": 287,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 8391,
      "end": 8400,
      "loc": {
        "start": {
          "line": 287,
          "column": 24
        },
        "end": {
          "line": 287,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 8401,
      "end": 8403,
      "loc": {
        "start": {
          "line": 287,
          "column": 34
        },
        "end": {
          "line": 287,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8404,
      "end": 8409,
      "loc": {
        "start": {
          "line": 287,
          "column": 37
        },
        "end": {
          "line": 287,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8409,
      "end": 8410,
      "loc": {
        "start": {
          "line": 287,
          "column": 42
        },
        "end": {
          "line": 287,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "s",
      "start": 8410,
      "end": 8411,
      "loc": {
        "start": {
          "line": 287,
          "column": 43
        },
        "end": {
          "line": 287,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 8412,
      "end": 8415,
      "loc": {
        "start": {
          "line": 287,
          "column": 45
        },
        "end": {
          "line": 287,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 8416,
      "end": 8425,
      "loc": {
        "start": {
          "line": 287,
          "column": 49
        },
        "end": {
          "line": 287,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8425,
      "end": 8426,
      "loc": {
        "start": {
          "line": 287,
          "column": 58
        },
        "end": {
          "line": 287,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8427,
      "end": 8428,
      "loc": {
        "start": {
          "line": 287,
          "column": 60
        },
        "end": {
          "line": 287,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 8441,
      "end": 8445,
      "loc": {
        "start": {
          "line": 288,
          "column": 12
        },
        "end": {
          "line": 288,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8445,
      "end": 8446,
      "loc": {
        "start": {
          "line": 288,
          "column": 16
        },
        "end": {
          "line": 288,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "no_overflow64",
      "start": 8446,
      "end": 8459,
      "loc": {
        "start": {
          "line": 288,
          "column": 17
        },
        "end": {
          "line": 288,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8459,
      "end": 8460,
      "loc": {
        "start": {
          "line": 288,
          "column": 30
        },
        "end": {
          "line": 288,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8460,
      "end": 8465,
      "loc": {
        "start": {
          "line": 288,
          "column": 31
        },
        "end": {
          "line": 288,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8465,
      "end": 8466,
      "loc": {
        "start": {
          "line": 288,
          "column": 36
        },
        "end": {
          "line": 288,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 8466,
      "end": 8474,
      "loc": {
        "start": {
          "line": 288,
          "column": 37
        },
        "end": {
          "line": 288,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8474,
      "end": 8475,
      "loc": {
        "start": {
          "line": 288,
          "column": 45
        },
        "end": {
          "line": 288,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8475,
      "end": 8476,
      "loc": {
        "start": {
          "line": 288,
          "column": 46
        },
        "end": {
          "line": 288,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8476,
      "end": 8477,
      "loc": {
        "start": {
          "line": 288,
          "column": 47
        },
        "end": {
          "line": 288,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 8478,
      "end": 8488,
      "loc": {
        "start": {
          "line": 288,
          "column": 49
        },
        "end": {
          "line": 288,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8488,
      "end": 8489,
      "loc": {
        "start": {
          "line": 288,
          "column": 59
        },
        "end": {
          "line": 288,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 8490,
      "end": 8498,
      "loc": {
        "start": {
          "line": 288,
          "column": 61
        },
        "end": {
          "line": 288,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8498,
      "end": 8499,
      "loc": {
        "start": {
          "line": 288,
          "column": 69
        },
        "end": {
          "line": 288,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8499,
      "end": 8500,
      "loc": {
        "start": {
          "line": 288,
          "column": 70
        },
        "end": {
          "line": 288,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 8513,
      "end": 8519,
      "loc": {
        "start": {
          "line": 289,
          "column": 12
        },
        "end": {
          "line": 289,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8519,
      "end": 8520,
      "loc": {
        "start": {
          "line": 289,
          "column": 18
        },
        "end": {
          "line": 289,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8529,
      "end": 8530,
      "loc": {
        "start": {
          "line": 290,
          "column": 8
        },
        "end": {
          "line": 290,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8540,
      "end": 8542,
      "loc": {
        "start": {
          "line": 292,
          "column": 8
        },
        "end": {
          "line": 292,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8543,
      "end": 8544,
      "loc": {
        "start": {
          "line": 292,
          "column": 11
        },
        "end": {
          "line": 292,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 8544,
      "end": 8550,
      "loc": {
        "start": {
          "line": 292,
          "column": 12
        },
        "end": {
          "line": 292,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8551,
      "end": 8556,
      "loc": {
        "start": {
          "line": 292,
          "column": 19
        },
        "end": {
          "line": 292,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8557,
      "end": 8560,
      "loc": {
        "start": {
          "line": 292,
          "column": 25
        },
        "end": {
          "line": 292,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string",
      "start": 8561,
      "end": 8569,
      "loc": {
        "start": {
          "line": 292,
          "column": 29
        },
        "end": {
          "line": 292,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8569,
      "end": 8570,
      "loc": {
        "start": {
          "line": 292,
          "column": 37
        },
        "end": {
          "line": 292,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8571,
      "end": 8572,
      "loc": {
        "start": {
          "line": 292,
          "column": 39
        },
        "end": {
          "line": 292,
          "column": 40
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove leading zeros, will cause a false positive",
      "start": 8585,
      "end": 8637,
      "loc": {
        "start": {
          "line": 293,
          "column": 12
        },
        "end": {
          "line": 293,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8650,
      "end": 8655,
      "loc": {
        "start": {
          "line": 294,
          "column": 12
        },
        "end": {
          "line": 294,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8656,
      "end": 8657,
      "loc": {
        "start": {
          "line": 294,
          "column": 18
        },
        "end": {
          "line": 294,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8658,
      "end": 8663,
      "loc": {
        "start": {
          "line": 294,
          "column": 20
        },
        "end": {
          "line": 294,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8663,
      "end": 8664,
      "loc": {
        "start": {
          "line": 294,
          "column": 25
        },
        "end": {
          "line": 294,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "replace",
      "start": 8664,
      "end": 8671,
      "loc": {
        "start": {
          "line": 294,
          "column": 26
        },
        "end": {
          "line": 294,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8671,
      "end": 8672,
      "loc": {
        "start": {
          "line": 294,
          "column": 33
        },
        "end": {
          "line": 294,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "^0+",
        "flags": ""
      },
      "start": 8672,
      "end": 8677,
      "loc": {
        "start": {
          "line": 294,
          "column": 34
        },
        "end": {
          "line": 294,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8677,
      "end": 8678,
      "loc": {
        "start": {
          "line": 294,
          "column": 39
        },
        "end": {
          "line": 294,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 8679,
      "end": 8681,
      "loc": {
        "start": {
          "line": 294,
          "column": 41
        },
        "end": {
          "line": 294,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8681,
      "end": 8682,
      "loc": {
        "start": {
          "line": 294,
          "column": 43
        },
        "end": {
          "line": 294,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8682,
      "end": 8683,
      "loc": {
        "start": {
          "line": 294,
          "column": 44
        },
        "end": {
          "line": 294,
          "column": 45
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove trailing zeros",
      "start": 8696,
      "end": 8720,
      "loc": {
        "start": {
          "line": 295,
          "column": 12
        },
        "end": {
          "line": 295,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "while",
        "keyword": "while",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "while",
      "start": 8733,
      "end": 8738,
      "loc": {
        "start": {
          "line": 296,
          "column": 12
        },
        "end": {
          "line": 296,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8739,
      "end": 8740,
      "loc": {
        "start": {
          "line": 296,
          "column": 18
        },
        "end": {
          "line": 296,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "0$",
        "flags": ""
      },
      "start": 8740,
      "end": 8744,
      "loc": {
        "start": {
          "line": 296,
          "column": 19
        },
        "end": {
          "line": 296,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8744,
      "end": 8745,
      "loc": {
        "start": {
          "line": 296,
          "column": 23
        },
        "end": {
          "line": 296,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 8745,
      "end": 8749,
      "loc": {
        "start": {
          "line": 296,
          "column": 24
        },
        "end": {
          "line": 296,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8749,
      "end": 8750,
      "loc": {
        "start": {
          "line": 296,
          "column": 28
        },
        "end": {
          "line": 296,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8750,
      "end": 8755,
      "loc": {
        "start": {
          "line": 296,
          "column": 29
        },
        "end": {
          "line": 296,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8755,
      "end": 8756,
      "loc": {
        "start": {
          "line": 296,
          "column": 34
        },
        "end": {
          "line": 296,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8756,
      "end": 8757,
      "loc": {
        "start": {
          "line": 296,
          "column": 35
        },
        "end": {
          "line": 296,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8758,
      "end": 8759,
      "loc": {
        "start": {
          "line": 296,
          "column": 37
        },
        "end": {
          "line": 296,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8776,
      "end": 8781,
      "loc": {
        "start": {
          "line": 297,
          "column": 16
        },
        "end": {
          "line": 297,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8782,
      "end": 8783,
      "loc": {
        "start": {
          "line": 297,
          "column": 22
        },
        "end": {
          "line": 297,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8784,
      "end": 8789,
      "loc": {
        "start": {
          "line": 297,
          "column": 24
        },
        "end": {
          "line": 297,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8789,
      "end": 8790,
      "loc": {
        "start": {
          "line": 297,
          "column": 29
        },
        "end": {
          "line": 297,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substring",
      "start": 8790,
      "end": 8799,
      "loc": {
        "start": {
          "line": 297,
          "column": 30
        },
        "end": {
          "line": 297,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8799,
      "end": 8800,
      "loc": {
        "start": {
          "line": 297,
          "column": 39
        },
        "end": {
          "line": 297,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8800,
      "end": 8801,
      "loc": {
        "start": {
          "line": 297,
          "column": 40
        },
        "end": {
          "line": 297,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8801,
      "end": 8802,
      "loc": {
        "start": {
          "line": 297,
          "column": 41
        },
        "end": {
          "line": 297,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8803,
      "end": 8808,
      "loc": {
        "start": {
          "line": 297,
          "column": 43
        },
        "end": {
          "line": 297,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8808,
      "end": 8809,
      "loc": {
        "start": {
          "line": 297,
          "column": 48
        },
        "end": {
          "line": 297,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 8809,
      "end": 8815,
      "loc": {
        "start": {
          "line": 297,
          "column": 49
        },
        "end": {
          "line": 297,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 8816,
      "end": 8817,
      "loc": {
        "start": {
          "line": 297,
          "column": 56
        },
        "end": {
          "line": 297,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 8818,
      "end": 8819,
      "loc": {
        "start": {
          "line": 297,
          "column": 58
        },
        "end": {
          "line": 297,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8819,
      "end": 8820,
      "loc": {
        "start": {
          "line": 297,
          "column": 59
        },
        "end": {
          "line": 297,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8820,
      "end": 8821,
      "loc": {
        "start": {
          "line": 297,
          "column": 60
        },
        "end": {
          "line": 297,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8834,
      "end": 8835,
      "loc": {
        "start": {
          "line": 298,
          "column": 12
        },
        "end": {
          "line": 298,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8848,
      "end": 8850,
      "loc": {
        "start": {
          "line": 299,
          "column": 12
        },
        "end": {
          "line": 299,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8851,
      "end": 8852,
      "loc": {
        "start": {
          "line": 299,
          "column": 15
        },
        "end": {
          "line": 299,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "\\.$",
        "flags": ""
      },
      "start": 8852,
      "end": 8857,
      "loc": {
        "start": {
          "line": 299,
          "column": 16
        },
        "end": {
          "line": 299,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8857,
      "end": 8858,
      "loc": {
        "start": {
          "line": 299,
          "column": 21
        },
        "end": {
          "line": 299,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "test",
      "start": 8858,
      "end": 8862,
      "loc": {
        "start": {
          "line": 299,
          "column": 22
        },
        "end": {
          "line": 299,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8862,
      "end": 8863,
      "loc": {
        "start": {
          "line": 299,
          "column": 26
        },
        "end": {
          "line": 299,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8863,
      "end": 8868,
      "loc": {
        "start": {
          "line": 299,
          "column": 27
        },
        "end": {
          "line": 299,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8868,
      "end": 8869,
      "loc": {
        "start": {
          "line": 299,
          "column": 32
        },
        "end": {
          "line": 299,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8869,
      "end": 8870,
      "loc": {
        "start": {
          "line": 299,
          "column": 33
        },
        "end": {
          "line": 299,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8871,
      "end": 8872,
      "loc": {
        "start": {
          "line": 299,
          "column": 35
        },
        "end": {
          "line": 299,
          "column": 36
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove trailing dot",
      "start": 8889,
      "end": 8911,
      "loc": {
        "start": {
          "line": 300,
          "column": 16
        },
        "end": {
          "line": 300,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8928,
      "end": 8933,
      "loc": {
        "start": {
          "line": 301,
          "column": 16
        },
        "end": {
          "line": 301,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8934,
      "end": 8935,
      "loc": {
        "start": {
          "line": 301,
          "column": 22
        },
        "end": {
          "line": 301,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8936,
      "end": 8941,
      "loc": {
        "start": {
          "line": 301,
          "column": 24
        },
        "end": {
          "line": 301,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8941,
      "end": 8942,
      "loc": {
        "start": {
          "line": 301,
          "column": 29
        },
        "end": {
          "line": 301,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substring",
      "start": 8942,
      "end": 8951,
      "loc": {
        "start": {
          "line": 301,
          "column": 30
        },
        "end": {
          "line": 301,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8951,
      "end": 8952,
      "loc": {
        "start": {
          "line": 301,
          "column": 39
        },
        "end": {
          "line": 301,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8952,
      "end": 8953,
      "loc": {
        "start": {
          "line": 301,
          "column": 40
        },
        "end": {
          "line": 301,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8953,
      "end": 8954,
      "loc": {
        "start": {
          "line": 301,
          "column": 41
        },
        "end": {
          "line": 301,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 8955,
      "end": 8960,
      "loc": {
        "start": {
          "line": 301,
          "column": 43
        },
        "end": {
          "line": 301,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8960,
      "end": 8961,
      "loc": {
        "start": {
          "line": 301,
          "column": 48
        },
        "end": {
          "line": 301,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 8961,
      "end": 8967,
      "loc": {
        "start": {
          "line": 301,
          "column": 49
        },
        "end": {
          "line": 301,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 8968,
      "end": 8969,
      "loc": {
        "start": {
          "line": 301,
          "column": 56
        },
        "end": {
          "line": 301,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 8970,
      "end": 8971,
      "loc": {
        "start": {
          "line": 301,
          "column": 58
        },
        "end": {
          "line": 301,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8971,
      "end": 8972,
      "loc": {
        "start": {
          "line": 301,
          "column": 59
        },
        "end": {
          "line": 301,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8972,
      "end": 8973,
      "loc": {
        "start": {
          "line": 301,
          "column": 60
        },
        "end": {
          "line": 301,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8986,
      "end": 8987,
      "loc": {
        "start": {
          "line": 302,
          "column": 12
        },
        "end": {
          "line": 302,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9000,
      "end": 9002,
      "loc": {
        "start": {
          "line": 303,
          "column": 12
        },
        "end": {
          "line": 303,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9003,
      "end": 9004,
      "loc": {
        "start": {
          "line": 303,
          "column": 15
        },
        "end": {
          "line": 303,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9004,
      "end": 9009,
      "loc": {
        "start": {
          "line": 303,
          "column": 16
        },
        "end": {
          "line": 303,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 9010,
      "end": 9013,
      "loc": {
        "start": {
          "line": 303,
          "column": 22
        },
        "end": {
          "line": 303,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 9014,
      "end": 9016,
      "loc": {
        "start": {
          "line": 303,
          "column": 26
        },
        "end": {
          "line": 303,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9016,
      "end": 9017,
      "loc": {
        "start": {
          "line": 303,
          "column": 28
        },
        "end": {
          "line": 303,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9018,
      "end": 9019,
      "loc": {
        "start": {
          "line": 303,
          "column": 30
        },
        "end": {
          "line": 303,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9036,
      "end": 9041,
      "loc": {
        "start": {
          "line": 304,
          "column": 16
        },
        "end": {
          "line": 304,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9042,
      "end": 9043,
      "loc": {
        "start": {
          "line": 304,
          "column": 22
        },
        "end": {
          "line": 304,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "0",
      "start": 9044,
      "end": 9047,
      "loc": {
        "start": {
          "line": 304,
          "column": 24
        },
        "end": {
          "line": 304,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9047,
      "end": 9048,
      "loc": {
        "start": {
          "line": 304,
          "column": 27
        },
        "end": {
          "line": 304,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9061,
      "end": 9062,
      "loc": {
        "start": {
          "line": 305,
          "column": 12
        },
        "end": {
          "line": 305,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "var",
        "keyword": "var",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "var",
      "start": 9075,
      "end": 9078,
      "loc": {
        "start": {
          "line": 306,
          "column": 12
        },
        "end": {
          "line": 306,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "long_string",
      "start": 9079,
      "end": 9090,
      "loc": {
        "start": {
          "line": 306,
          "column": 16
        },
        "end": {
          "line": 306,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9091,
      "end": 9092,
      "loc": {
        "start": {
          "line": 306,
          "column": 28
        },
        "end": {
          "line": 306,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Long",
      "start": 9093,
      "end": 9097,
      "loc": {
        "start": {
          "line": 306,
          "column": 30
        },
        "end": {
          "line": 306,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9097,
      "end": 9098,
      "loc": {
        "start": {
          "line": 306,
          "column": 34
        },
        "end": {
          "line": 306,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fromString",
      "start": 9098,
      "end": 9108,
      "loc": {
        "start": {
          "line": 306,
          "column": 35
        },
        "end": {
          "line": 306,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9108,
      "end": 9109,
      "loc": {
        "start": {
          "line": 306,
          "column": 45
        },
        "end": {
          "line": 306,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9109,
      "end": 9114,
      "loc": {
        "start": {
          "line": 306,
          "column": 46
        },
        "end": {
          "line": 306,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9114,
      "end": 9115,
      "loc": {
        "start": {
          "line": 306,
          "column": 51
        },
        "end": {
          "line": 306,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unsigned",
      "start": 9116,
      "end": 9124,
      "loc": {
        "start": {
          "line": 306,
          "column": 53
        },
        "end": {
          "line": 306,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9124,
      "end": 9125,
      "loc": {
        "start": {
          "line": 306,
          "column": 61
        },
        "end": {
          "line": 306,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9125,
      "end": 9126,
      "loc": {
        "start": {
          "line": 306,
          "column": 62
        },
        "end": {
          "line": 306,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 9126,
      "end": 9134,
      "loc": {
        "start": {
          "line": 306,
          "column": 63
        },
        "end": {
          "line": 306,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9134,
      "end": 9135,
      "loc": {
        "start": {
          "line": 306,
          "column": 71
        },
        "end": {
          "line": 306,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9135,
      "end": 9136,
      "loc": {
        "start": {
          "line": 306,
          "column": 72
        },
        "end": {
          "line": 306,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9136,
      "end": 9137,
      "loc": {
        "start": {
          "line": 306,
          "column": 73
        },
        "end": {
          "line": 306,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9150,
      "end": 9152,
      "loc": {
        "start": {
          "line": 307,
          "column": 12
        },
        "end": {
          "line": 307,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9153,
      "end": 9154,
      "loc": {
        "start": {
          "line": 307,
          "column": 15
        },
        "end": {
          "line": 307,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "long_string",
      "start": 9154,
      "end": 9165,
      "loc": {
        "start": {
          "line": 307,
          "column": 16
        },
        "end": {
          "line": 307,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 9166,
      "end": 9169,
      "loc": {
        "start": {
          "line": 307,
          "column": 28
        },
        "end": {
          "line": 307,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9170,
      "end": 9175,
      "loc": {
        "start": {
          "line": 307,
          "column": 32
        },
        "end": {
          "line": 307,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9175,
      "end": 9176,
      "loc": {
        "start": {
          "line": 307,
          "column": 37
        },
        "end": {
          "line": 307,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "trim",
      "start": 9176,
      "end": 9180,
      "loc": {
        "start": {
          "line": 307,
          "column": 38
        },
        "end": {
          "line": 307,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9180,
      "end": 9181,
      "loc": {
        "start": {
          "line": 307,
          "column": 42
        },
        "end": {
          "line": 307,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9181,
      "end": 9182,
      "loc": {
        "start": {
          "line": 307,
          "column": 43
        },
        "end": {
          "line": 307,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9182,
      "end": 9183,
      "loc": {
        "start": {
          "line": 307,
          "column": 44
        },
        "end": {
          "line": 307,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9184,
      "end": 9185,
      "loc": {
        "start": {
          "line": 307,
          "column": 46
        },
        "end": {
          "line": 307,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 9202,
      "end": 9207,
      "loc": {
        "start": {
          "line": 308,
          "column": 16
        },
        "end": {
          "line": 308,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 9208,
      "end": 9211,
      "loc": {
        "start": {
          "line": 308,
          "column": 22
        },
        "end": {
          "line": 308,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 9212,
      "end": 9217,
      "loc": {
        "start": {
          "line": 308,
          "column": 26
        },
        "end": {
          "line": 308,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9217,
      "end": 9218,
      "loc": {
        "start": {
          "line": 308,
          "column": 31
        },
        "end": {
          "line": 308,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9218,
      "end": 9219,
      "loc": {
        "start": {
          "line": 308,
          "column": 32
        },
        "end": {
          "line": 308,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "overflow ",
      "start": 9219,
      "end": 9228,
      "loc": {
        "start": {
          "line": 308,
          "column": 33
        },
        "end": {
          "line": 308,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9228,
      "end": 9230,
      "loc": {
        "start": {
          "line": 308,
          "column": 42
        },
        "end": {
          "line": 308,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 9230,
      "end": 9240,
      "loc": {
        "start": {
          "line": 308,
          "column": 44
        },
        "end": {
          "line": 308,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9240,
      "end": 9241,
      "loc": {
        "start": {
          "line": 308,
          "column": 54
        },
        "end": {
          "line": 308,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 9241,
      "end": 9242,
      "loc": {
        "start": {
          "line": 308,
          "column": 55
        },
        "end": {
          "line": 308,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9242,
      "end": 9244,
      "loc": {
        "start": {
          "line": 308,
          "column": 56
        },
        "end": {
          "line": 308,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9244,
      "end": 9249,
      "loc": {
        "start": {
          "line": 308,
          "column": 58
        },
        "end": {
          "line": 308,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9249,
      "end": 9250,
      "loc": {
        "start": {
          "line": 308,
          "column": 63
        },
        "end": {
          "line": 308,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 9250,
      "end": 9250,
      "loc": {
        "start": {
          "line": 308,
          "column": 64
        },
        "end": {
          "line": 308,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9250,
      "end": 9251,
      "loc": {
        "start": {
          "line": 308,
          "column": 64
        },
        "end": {
          "line": 308,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9251,
      "end": 9252,
      "loc": {
        "start": {
          "line": 308,
          "column": 65
        },
        "end": {
          "line": 308,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9252,
      "end": 9253,
      "loc": {
        "start": {
          "line": 308,
          "column": 66
        },
        "end": {
          "line": 308,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9266,
      "end": 9267,
      "loc": {
        "start": {
          "line": 309,
          "column": 12
        },
        "end": {
          "line": 309,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 9280,
      "end": 9286,
      "loc": {
        "start": {
          "line": 310,
          "column": 12
        },
        "end": {
          "line": 310,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9286,
      "end": 9287,
      "loc": {
        "start": {
          "line": 310,
          "column": 18
        },
        "end": {
          "line": 310,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9296,
      "end": 9297,
      "loc": {
        "start": {
          "line": 311,
          "column": 8
        },
        "end": {
          "line": 311,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9306,
      "end": 9308,
      "loc": {
        "start": {
          "line": 312,
          "column": 8
        },
        "end": {
          "line": 312,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9309,
      "end": 9310,
      "loc": {
        "start": {
          "line": 312,
          "column": 11
        },
        "end": {
          "line": 312,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 9310,
      "end": 9316,
      "loc": {
        "start": {
          "line": 312,
          "column": 12
        },
        "end": {
          "line": 312,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9317,
      "end": 9322,
      "loc": {
        "start": {
          "line": 312,
          "column": 19
        },
        "end": {
          "line": 312,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 9323,
      "end": 9326,
      "loc": {
        "start": {
          "line": 312,
          "column": 25
        },
        "end": {
          "line": 312,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "number",
      "start": 9327,
      "end": 9335,
      "loc": {
        "start": {
          "line": 312,
          "column": 29
        },
        "end": {
          "line": 312,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9335,
      "end": 9336,
      "loc": {
        "start": {
          "line": 312,
          "column": 37
        },
        "end": {
          "line": 312,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9337,
      "end": 9338,
      "loc": {
        "start": {
          "line": 312,
          "column": 39
        },
        "end": {
          "line": 312,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9351,
      "end": 9353,
      "loc": {
        "start": {
          "line": 313,
          "column": 12
        },
        "end": {
          "line": 313,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9354,
      "end": 9355,
      "loc": {
        "start": {
          "line": 313,
          "column": 15
        },
        "end": {
          "line": 313,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9355,
      "end": 9360,
      "loc": {
        "start": {
          "line": 313,
          "column": 16
        },
        "end": {
          "line": 313,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 9361,
      "end": 9362,
      "loc": {
        "start": {
          "line": 313,
          "column": 22
        },
        "end": {
          "line": 313,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MAX_SAFE_INT",
      "start": 9363,
      "end": 9375,
      "loc": {
        "start": {
          "line": 313,
          "column": 24
        },
        "end": {
          "line": 313,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 9376,
      "end": 9378,
      "loc": {
        "start": {
          "line": 313,
          "column": 37
        },
        "end": {
          "line": 313,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9379,
      "end": 9384,
      "loc": {
        "start": {
          "line": 313,
          "column": 40
        },
        "end": {
          "line": 313,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<",
      "start": 9385,
      "end": 9386,
      "loc": {
        "start": {
          "line": 313,
          "column": 46
        },
        "end": {
          "line": 313,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "MIN_SAFE_INT",
      "start": 9387,
      "end": 9399,
      "loc": {
        "start": {
          "line": 313,
          "column": 48
        },
        "end": {
          "line": 313,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9399,
      "end": 9400,
      "loc": {
        "start": {
          "line": 313,
          "column": 60
        },
        "end": {
          "line": 313,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9401,
      "end": 9402,
      "loc": {
        "start": {
          "line": 313,
          "column": 62
        },
        "end": {
          "line": 313,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 9419,
      "end": 9424,
      "loc": {
        "start": {
          "line": 314,
          "column": 16
        },
        "end": {
          "line": 314,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 9425,
      "end": 9428,
      "loc": {
        "start": {
          "line": 314,
          "column": 22
        },
        "end": {
          "line": 314,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Error",
      "start": 9429,
      "end": 9434,
      "loc": {
        "start": {
          "line": 314,
          "column": 26
        },
        "end": {
          "line": 314,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9434,
      "end": 9435,
      "loc": {
        "start": {
          "line": 314,
          "column": 31
        },
        "end": {
          "line": 314,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9435,
      "end": 9436,
      "loc": {
        "start": {
          "line": 314,
          "column": 32
        },
        "end": {
          "line": 314,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "overflow ",
      "start": 9436,
      "end": 9445,
      "loc": {
        "start": {
          "line": 314,
          "column": 33
        },
        "end": {
          "line": 314,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9445,
      "end": 9447,
      "loc": {
        "start": {
          "line": 314,
          "column": 42
        },
        "end": {
          "line": 314,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 9447,
      "end": 9457,
      "loc": {
        "start": {
          "line": 314,
          "column": 44
        },
        "end": {
          "line": 314,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9457,
      "end": 9458,
      "loc": {
        "start": {
          "line": 314,
          "column": 54
        },
        "end": {
          "line": 314,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 9458,
      "end": 9459,
      "loc": {
        "start": {
          "line": 314,
          "column": 55
        },
        "end": {
          "line": 314,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9459,
      "end": 9461,
      "loc": {
        "start": {
          "line": 314,
          "column": 56
        },
        "end": {
          "line": 314,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9461,
      "end": 9466,
      "loc": {
        "start": {
          "line": 314,
          "column": 58
        },
        "end": {
          "line": 314,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9466,
      "end": 9467,
      "loc": {
        "start": {
          "line": 314,
          "column": 63
        },
        "end": {
          "line": 314,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 9467,
      "end": 9467,
      "loc": {
        "start": {
          "line": 314,
          "column": 64
        },
        "end": {
          "line": 314,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9467,
      "end": 9468,
      "loc": {
        "start": {
          "line": 314,
          "column": 64
        },
        "end": {
          "line": 314,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9468,
      "end": 9469,
      "loc": {
        "start": {
          "line": 314,
          "column": 65
        },
        "end": {
          "line": 314,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9469,
      "end": 9470,
      "loc": {
        "start": {
          "line": 314,
          "column": 66
        },
        "end": {
          "line": 314,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9483,
      "end": 9484,
      "loc": {
        "start": {
          "line": 315,
          "column": 12
        },
        "end": {
          "line": 315,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 9497,
      "end": 9503,
      "loc": {
        "start": {
          "line": 316,
          "column": 12
        },
        "end": {
          "line": 316,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9503,
      "end": 9504,
      "loc": {
        "start": {
          "line": 316,
          "column": 18
        },
        "end": {
          "line": 316,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9513,
      "end": 9514,
      "loc": {
        "start": {
          "line": 317,
          "column": 8
        },
        "end": {
          "line": 317,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 9524,
      "end": 9529,
      "loc": {
        "start": {
          "line": 319,
          "column": 8
        },
        "end": {
          "line": 319,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9530,
      "end": 9531,
      "loc": {
        "start": {
          "line": 319,
          "column": 14
        },
        "end": {
          "line": 319,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unsupported type ",
      "start": 9531,
      "end": 9548,
      "loc": {
        "start": {
          "line": 319,
          "column": 15
        },
        "end": {
          "line": 319,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9548,
      "end": 9550,
      "loc": {
        "start": {
          "line": 319,
          "column": 32
        },
        "end": {
          "line": 319,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field_name",
      "start": 9550,
      "end": 9560,
      "loc": {
        "start": {
          "line": 319,
          "column": 34
        },
        "end": {
          "line": 319,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9560,
      "end": 9561,
      "loc": {
        "start": {
          "line": 319,
          "column": 44
        },
        "end": {
          "line": 319,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ": (",
      "start": 9561,
      "end": 9564,
      "loc": {
        "start": {
          "line": 319,
          "column": 45
        },
        "end": {
          "line": 319,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9564,
      "end": 9566,
      "loc": {
        "start": {
          "line": 319,
          "column": 48
        },
        "end": {
          "line": 319,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 9566,
      "end": 9572,
      "loc": {
        "start": {
          "line": 319,
          "column": 50
        },
        "end": {
          "line": 319,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9573,
      "end": 9578,
      "loc": {
        "start": {
          "line": 319,
          "column": 57
        },
        "end": {
          "line": 319,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9578,
      "end": 9579,
      "loc": {
        "start": {
          "line": 319,
          "column": 62
        },
        "end": {
          "line": 319,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ") ",
      "start": 9579,
      "end": 9581,
      "loc": {
        "start": {
          "line": 319,
          "column": 63
        },
        "end": {
          "line": 319,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9581,
      "end": 9583,
      "loc": {
        "start": {
          "line": 319,
          "column": 65
        },
        "end": {
          "line": 319,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 9583,
      "end": 9588,
      "loc": {
        "start": {
          "line": 319,
          "column": 67
        },
        "end": {
          "line": 319,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9588,
      "end": 9589,
      "loc": {
        "start": {
          "line": 319,
          "column": 72
        },
        "end": {
          "line": 319,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 9589,
      "end": 9589,
      "loc": {
        "start": {
          "line": 319,
          "column": 73
        },
        "end": {
          "line": 319,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9589,
      "end": 9590,
      "loc": {
        "start": {
          "line": 319,
          "column": 73
        },
        "end": {
          "line": 319,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9590,
      "end": 9591,
      "loc": {
        "start": {
          "line": 319,
          "column": 74
        },
        "end": {
          "line": 319,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9596,
      "end": 9597,
      "loc": {
        "start": {
          "line": 320,
          "column": 4
        },
        "end": {
          "line": 320,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9598,
      "end": 9599,
      "loc": {
        "start": {
          "line": 321,
          "column": 0
        },
        "end": {
          "line": 321,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9599,
      "end": 9600,
      "loc": {
        "start": {
          "line": 321,
          "column": 1
        },
        "end": {
          "line": 321,
          "column": 2
        }
      }
    },
    {
      "type": {
        "label": "export",
        "keyword": "export",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "export",
      "start": 9602,
      "end": 9608,
      "loc": {
        "start": {
          "line": 323,
          "column": 0
        },
        "end": {
          "line": 323,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "default",
        "keyword": "default",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "default",
      "start": 9609,
      "end": 9616,
      "loc": {
        "start": {
          "line": 323,
          "column": 7
        },
        "end": {
          "line": 323,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_my",
      "start": 9617,
      "end": 9620,
      "loc": {
        "start": {
          "line": 323,
          "column": 15
        },
        "end": {
          "line": 323,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9620,
      "end": 9621,
      "loc": {
        "start": {
          "line": 323,
          "column": 18
        },
        "end": {
          "line": 323,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9622,
      "end": 9622,
      "loc": {
        "start": {
          "line": 324,
          "column": 0
        },
        "end": {
          "line": 324,
          "column": 0
        }
      }
    }
  ]
}