{
  "type": "File",
  "start": 0,
  "end": 1555,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 61,
      "column": 0
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 1555,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 61,
        "column": 0
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "ImportDeclaration",
        "start": 0,
        "end": 48,
        "loc": {
          "start": {
            "line": 1,
            "column": 0
          },
          "end": {
            "line": 1,
            "column": 48
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 7,
            "end": 16,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 16
              }
            },
            "local": {
              "type": "Identifier",
              "start": 7,
              "end": 16,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 7
                },
                "end": {
                  "line": 1,
                  "column": 16
                },
                "identifierName": "PublicKey"
              },
              "name": "PublicKey"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 22,
          "end": 47,
          "loc": {
            "start": {
              "line": 1,
              "column": 22
            },
            "end": {
              "line": 1,
              "column": 47
            }
          },
          "extra": {
            "rawValue": "../../ecc/src/PublicKey",
            "raw": "\"../../ecc/src/PublicKey\""
          },
          "value": "../../ecc/src/PublicKey"
        }
      },
      {
        "type": "VariableDeclaration",
        "start": 49,
        "end": 94,
        "loc": {
          "start": {
            "line": 2,
            "column": 0
          },
          "end": {
            "line": 2,
            "column": 45
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 55,
            "end": 93,
            "loc": {
              "start": {
                "line": 2,
                "column": 6
              },
              "end": {
                "line": 2,
                "column": 44
              }
            },
            "id": {
              "type": "Identifier",
              "start": 55,
              "end": 61,
              "loc": {
                "start": {
                  "line": 2,
                  "column": 6
                },
                "end": {
                  "line": 2,
                  "column": 12
                },
                "identifierName": "Buffer"
              },
              "name": "Buffer"
            },
            "init": {
              "type": "MemberExpression",
              "start": 64,
              "end": 93,
              "loc": {
                "start": {
                  "line": 2,
                  "column": 15
                },
                "end": {
                  "line": 2,
                  "column": 44
                }
              },
              "object": {
                "type": "CallExpression",
                "start": 64,
                "end": 86,
                "loc": {
                  "start": {
                    "line": 2,
                    "column": 15
                  },
                  "end": {
                    "line": 2,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 64,
                  "end": 71,
                  "loc": {
                    "start": {
                      "line": 2,
                      "column": 15
                    },
                    "end": {
                      "line": 2,
                      "column": 22
                    },
                    "identifierName": "require"
                  },
                  "name": "require"
                },
                "arguments": [
                  {
                    "type": "StringLiteral",
                    "start": 72,
                    "end": 85,
                    "loc": {
                      "start": {
                        "line": 2,
                        "column": 23
                      },
                      "end": {
                        "line": 2,
                        "column": 36
                      }
                    },
                    "extra": {
                      "rawValue": "safe-buffer",
                      "raw": "\"safe-buffer\""
                    },
                    "value": "safe-buffer"
                  }
                ]
              },
              "property": {
                "type": "Identifier",
                "start": 87,
                "end": 93,
                "loc": {
                  "start": {
                    "line": 2,
                    "column": 38
                  },
                  "end": {
                    "line": 2,
                    "column": 44
                  },
                  "identifierName": "Buffer"
                },
                "name": "Buffer"
              },
              "computed": false
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "Identifier",
        "start": 96,
        "end": 1526,
        "loc": {
          "start": {
            "line": 4,
            "column": 0
          },
          "end": {
            "line": 58,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 102,
          "end": 112,
          "loc": {
            "start": {
              "line": 4,
              "column": 6
            },
            "end": {
              "line": 4,
              "column": 16
            },
            "identifierName": "FastParser"
          },
          "name": "FastParser"
        },
        "superClass": null,
        "body": {
          "type": "ClassBody",
          "start": 113,
          "end": 1526,
          "loc": {
            "start": {
              "line": 4,
              "column": 17
            },
            "end": {
              "line": 58,
              "column": 1
            }
          },
          "body": [
            {
              "type": "ClassMethod",
              "start": 119,
              "end": 593,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 4
                },
                "end": {
                  "line": 20,
                  "column": 5
                }
              },
              "static": true,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 126,
                "end": 136,
                "loc": {
                  "start": {
                    "line": 5,
                    "column": 11
                  },
                  "end": {
                    "line": 5,
                    "column": 21
                  },
                  "identifierName": "fixed_data"
                },
                "name": "fixed_data"
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 137,
                  "end": 138,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 22
                    },
                    "end": {
                      "line": 5,
                      "column": 23
                    },
                    "identifierName": "b"
                  },
                  "name": "b"
                },
                {
                  "type": "Identifier",
                  "start": 140,
                  "end": 143,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 25
                    },
                    "end": {
                      "line": 5,
                      "column": 28
                    },
                    "identifierName": "len"
                  },
                  "name": "len"
                },
                {
                  "type": "Identifier",
                  "start": 145,
                  "end": 151,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 30
                    },
                    "end": {
                      "line": 5,
                      "column": 36
                    },
                    "identifierName": "buffer"
                  },
                  "name": "buffer"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 153,
                "end": 593,
                "loc": {
                  "start": {
                    "line": 5,
                    "column": 38
                  },
                  "end": {
                    "line": 20,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 163,
                    "end": 202,
                    "loc": {
                      "start": {
                        "line": 6,
                        "column": 8
                      },
                      "end": {
                        "line": 8,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 167,
                      "end": 169,
                      "loc": {
                        "start": {
                          "line": 6,
                          "column": 12
                        },
                        "end": {
                          "line": 6,
                          "column": 14
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "Identifier",
                        "start": 168,
                        "end": 169,
                        "loc": {
                          "start": {
                            "line": 6,
                            "column": 13
                          },
                          "end": {
                            "line": 6,
                            "column": 14
                          },
                          "identifierName": "b"
                        },
                        "name": "b"
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 171,
                      "end": 202,
                      "loc": {
                        "start": {
                          "line": 6,
                          "column": 16
                        },
                        "end": {
                          "line": 8,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 185,
                          "end": 192,
                          "loc": {
                            "start": {
                              "line": 7,
                              "column": 12
                            },
                            "end": {
                              "line": 7,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 211,
                    "end": 587,
                    "loc": {
                      "start": {
                        "line": 9,
                        "column": 8
                      },
                      "end": {
                        "line": 19,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 215,
                      "end": 221,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 12
                        },
                        "end": {
                          "line": 9,
                          "column": 18
                        },
                        "identifierName": "buffer"
                      },
                      "name": "buffer"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 223,
                      "end": 425,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 20
                        },
                        "end": {
                          "line": 15,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "start": 237,
                          "end": 288,
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 12
                            },
                            "end": {
                              "line": 10,
                              "column": 63
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 241,
                              "end": 287,
                              "loc": {
                                "start": {
                                  "line": 10,
                                  "column": 16
                                },
                                "end": {
                                  "line": 10,
                                  "column": 62
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 241,
                                "end": 245,
                                "loc": {
                                  "start": {
                                    "line": 10,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 10,
                                    "column": 20
                                  },
                                  "identifierName": "data"
                                },
                                "name": "data"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 248,
                                "end": 287,
                                "loc": {
                                  "start": {
                                    "line": 10,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 10,
                                    "column": 62
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 248,
                                  "end": 277,
                                  "loc": {
                                    "start": {
                                      "line": 10,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 10,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 248,
                                    "end": 268,
                                    "loc": {
                                      "start": {
                                        "line": 10,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 10,
                                        "column": 43
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 248,
                                      "end": 260,
                                      "loc": {
                                        "start": {
                                          "line": 10,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 10,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 248,
                                        "end": 254,
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 29
                                          },
                                          "identifierName": "buffer"
                                        },
                                        "name": "buffer"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 255,
                                        "end": 260,
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 35
                                          },
                                          "identifierName": "slice"
                                        },
                                        "name": "slice"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 261,
                                        "end": 262,
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 37
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "value": 0
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 264,
                                        "end": 267,
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 42
                                          },
                                          "identifierName": "len"
                                        },
                                        "name": "len"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 269,
                                    "end": 277,
                                    "loc": {
                                      "start": {
                                        "line": 10,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 10,
                                        "column": 52
                                      },
                                      "identifierName": "toString"
                                    },
                                    "name": "toString"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 278,
                                    "end": 286,
                                    "loc": {
                                      "start": {
                                        "line": 10,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 10,
                                        "column": 61
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "binary",
                                      "raw": "\"binary\""
                                    },
                                    "value": "binary"
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "let"
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 301,
                          "end": 326,
                          "loc": {
                            "start": {
                              "line": 11,
                              "column": 12
                            },
                            "end": {
                              "line": 11,
                              "column": 37
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 301,
                            "end": 325,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 12
                              },
                              "end": {
                                "line": 11,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 301,
                              "end": 309,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 12
                                },
                                "end": {
                                  "line": 11,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 301,
                                "end": 302,
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 13
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 303,
                                "end": 309,
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 20
                                  },
                                  "identifierName": "append"
                                },
                                "name": "append"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 310,
                                "end": 314,
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 25
                                  },
                                  "identifierName": "data"
                                },
                                "name": "data"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 316,
                                "end": 324,
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 35
                                  }
                                },
                                "extra": {
                                  "rawValue": "binary",
                                  "raw": "\"binary\""
                                },
                                "value": "binary"
                              }
                            ]
                          }
                        },
                        {
                          "type": "WhileStatement",
                          "start": 339,
                          "end": 415,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 12
                            },
                            "end": {
                              "line": 14,
                              "column": 13
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 346,
                            "end": 365,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 19
                              },
                              "end": {
                                "line": 12,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "UpdateExpression",
                              "start": 346,
                              "end": 351,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 19
                                },
                                "end": {
                                  "line": 12,
                                  "column": 24
                                }
                              },
                              "operator": "--",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 346,
                                "end": 349,
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 22
                                  },
                                  "identifierName": "len"
                                },
                                "name": "len"
                              }
                            },
                            "operator": ">",
                            "right": {
                              "type": "MemberExpression",
                              "start": 354,
                              "end": 365,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 27
                                },
                                "end": {
                                  "line": 12,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 354,
                                "end": 358,
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 31
                                  },
                                  "identifierName": "data"
                                },
                                "name": "data"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 359,
                                "end": 365,
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 38
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          "body": {
                            "type": "BlockStatement",
                            "start": 367,
                            "end": 415,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 40
                              },
                              "end": {
                                "line": 14,
                                "column": 13
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 385,
                                "end": 401,
                                "loc": {
                                  "start": {
                                    "line": 13,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 13,
                                    "column": 32
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 385,
                                  "end": 400,
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 31
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 385,
                                    "end": 397,
                                    "loc": {
                                      "start": {
                                        "line": 13,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 13,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 385,
                                      "end": 386,
                                      "loc": {
                                        "start": {
                                          "line": 13,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 13,
                                          "column": 17
                                        },
                                        "identifierName": "b"
                                      },
                                      "name": "b"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 387,
                                      "end": 397,
                                      "loc": {
                                        "start": {
                                          "line": 13,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 13,
                                          "column": 28
                                        },
                                        "identifierName": "writeUint8"
                                      },
                                      "name": "writeUint8"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NumericLiteral",
                                      "start": 398,
                                      "end": 399,
                                      "loc": {
                                        "start": {
                                          "line": 13,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 13,
                                          "column": 30
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "value": 0
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 431,
                      "end": 587,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 15
                        },
                        "end": {
                          "line": 19,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "start": 445,
                          "end": 491,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 12
                            },
                            "end": {
                              "line": 16,
                              "column": 58
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 449,
                              "end": 490,
                              "loc": {
                                "start": {
                                  "line": 16,
                                  "column": 16
                                },
                                "end": {
                                  "line": 16,
                                  "column": 57
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 449,
                                "end": 455,
                                "loc": {
                                  "start": {
                                    "line": 16,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 16,
                                    "column": 22
                                  },
                                  "identifierName": "b_copy"
                                },
                                "name": "b_copy"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 458,
                                "end": 490,
                                "loc": {
                                  "start": {
                                    "line": 16,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 16,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 458,
                                  "end": 464,
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 16,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 458,
                                    "end": 459,
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 26
                                      },
                                      "identifierName": "b"
                                    },
                                    "name": "b"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 460,
                                    "end": 464,
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 31
                                      },
                                      "identifierName": "copy"
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 465,
                                    "end": 473,
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 465,
                                      "end": 466,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 33
                                        },
                                        "identifierName": "b"
                                      },
                                      "name": "b"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 467,
                                      "end": 473,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 40
                                        },
                                        "identifierName": "offset"
                                      },
                                      "name": "offset"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "BinaryExpression",
                                    "start": 475,
                                    "end": 489,
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 56
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 475,
                                      "end": 483,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 475,
                                        "end": 476,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 43
                                          },
                                          "identifierName": "b"
                                        },
                                        "name": "b"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 477,
                                        "end": 483,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 50
                                          },
                                          "identifierName": "offset"
                                        },
                                        "name": "offset"
                                      },
                                      "computed": false
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 486,
                                      "end": 489,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 56
                                        },
                                        "identifierName": "len"
                                      },
                                      "name": "len"
                                    }
                                  }
                                ]
                              }
                            }
                          ],
                          "kind": "let"
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 504,
                          "end": 516,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 12
                            },
                            "end": {
                              "line": 17,
                              "column": 24
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 504,
                            "end": 515,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 12
                              },
                              "end": {
                                "line": 17,
                                "column": 23
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 504,
                              "end": 510,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 12
                                },
                                "end": {
                                  "line": 17,
                                  "column": 18
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 504,
                                "end": 505,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 13
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 506,
                                "end": 510,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 18
                                  },
                                  "identifierName": "skip"
                                },
                                "name": "skip"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 511,
                                "end": 514,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 22
                                  },
                                  "identifierName": "len"
                                },
                                "name": "len"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 529,
                          "end": 577,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 12
                            },
                            "end": {
                              "line": 18,
                              "column": 60
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 536,
                            "end": 576,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 19
                              },
                              "end": {
                                "line": 18,
                                "column": 59
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 536,
                              "end": 547,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 19
                                },
                                "end": {
                                  "line": 18,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 536,
                                "end": 542,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 25
                                  },
                                  "identifierName": "Buffer"
                                },
                                "name": "Buffer"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 543,
                                "end": 547,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 30
                                  },
                                  "identifierName": "from"
                                },
                                "name": "from"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 548,
                                "end": 565,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 48
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 548,
                                  "end": 563,
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 548,
                                    "end": 554,
                                    "loc": {
                                      "start": {
                                        "line": 18,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 18,
                                        "column": 37
                                      },
                                      "identifierName": "b_copy"
                                    },
                                    "name": "b_copy"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 555,
                                    "end": 563,
                                    "loc": {
                                      "start": {
                                        "line": 18,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 18,
                                        "column": 46
                                      },
                                      "identifierName": "toBinary"
                                    },
                                    "name": "toBinary"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              {
                                "type": "StringLiteral",
                                "start": 567,
                                "end": 575,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 58
                                  }
                                },
                                "extra": {
                                  "rawValue": "binary",
                                  "raw": "\"binary\""
                                },
                                "value": "binary"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                ],
                "directives": []
              }
            },
            {
              "type": "ClassMethod",
              "start": 599,
              "end": 967,
              "loc": {
                "start": {
                  "line": 22,
                  "column": 4
                },
                "end": {
                  "line": 34,
                  "column": 5
                }
              },
              "static": true,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 606,
                "end": 616,
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 11
                  },
                  "end": {
                    "line": 22,
                    "column": 21
                  },
                  "identifierName": "public_key"
                },
                "name": "public_key"
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 617,
                  "end": 618,
                  "loc": {
                    "start": {
                      "line": 22,
                      "column": 22
                    },
                    "end": {
                      "line": 22,
                      "column": 23
                    },
                    "identifierName": "b"
                  },
                  "name": "b"
                },
                {
                  "type": "Identifier",
                  "start": 620,
                  "end": 630,
                  "loc": {
                    "start": {
                      "line": 22,
                      "column": 25
                    },
                    "end": {
                      "line": 22,
                      "column": 35
                    },
                    "identifierName": "public_key"
                  },
                  "name": "public_key"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 632,
                "end": 967,
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 37
                  },
                  "end": {
                    "line": 34,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 642,
                    "end": 681,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 8
                      },
                      "end": {
                        "line": 25,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 646,
                      "end": 648,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 12
                        },
                        "end": {
                          "line": 23,
                          "column": 14
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "Identifier",
                        "start": 647,
                        "end": 648,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 13
                          },
                          "end": {
                            "line": 23,
                            "column": 14
                          },
                          "identifierName": "b"
                        },
                        "name": "b"
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 650,
                      "end": 681,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 16
                        },
                        "end": {
                          "line": 25,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 664,
                          "end": 671,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 12
                            },
                            "end": {
                              "line": 24,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 690,
                    "end": 961,
                    "loc": {
                      "start": {
                        "line": 26,
                        "column": 8
                      },
                      "end": {
                        "line": 33,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 694,
                      "end": 704,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 12
                        },
                        "end": {
                          "line": 26,
                          "column": 22
                        },
                        "identifierName": "public_key"
                      },
                      "name": "public_key"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 706,
                      "end": 844,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 24
                        },
                        "end": {
                          "line": 30,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "start": 720,
                          "end": 755,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 12
                            },
                            "end": {
                              "line": 27,
                              "column": 47
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 724,
                              "end": 754,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 16
                                },
                                "end": {
                                  "line": 27,
                                  "column": 46
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 724,
                                "end": 730,
                                "loc": {
                                  "start": {
                                    "line": 27,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 22
                                  },
                                  "identifierName": "buffer"
                                },
                                "name": "buffer"
                              },
                              "init": {
                                "type": "CallExpression",
                                "start": 733,
                                "end": 754,
                                "loc": {
                                  "start": {
                                    "line": 27,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 46
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 733,
                                  "end": 752,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 733,
                                    "end": 743,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 35
                                      },
                                      "identifierName": "public_key"
                                    },
                                    "name": "public_key"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 744,
                                    "end": 752,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 44
                                      },
                                      "identifierName": "toBuffer"
                                    },
                                    "name": "toBuffer"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          ],
                          "kind": "var"
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 768,
                          "end": 814,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 12
                            },
                            "end": {
                              "line": 28,
                              "column": 58
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 768,
                            "end": 813,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 12
                              },
                              "end": {
                                "line": 28,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 768,
                              "end": 776,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 12
                                },
                                "end": {
                                  "line": 28,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 768,
                                "end": 769,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 13
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 770,
                                "end": 776,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 20
                                  },
                                  "identifierName": "append"
                                },
                                "name": "append"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 777,
                                "end": 802,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 46
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 777,
                                  "end": 792,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 777,
                                    "end": 783,
                                    "loc": {
                                      "start": {
                                        "line": 28,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 28,
                                        "column": 27
                                      },
                                      "identifierName": "buffer"
                                    },
                                    "name": "buffer"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 784,
                                    "end": 792,
                                    "loc": {
                                      "start": {
                                        "line": 28,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 28,
                                        "column": 36
                                      },
                                      "identifierName": "toString"
                                    },
                                    "name": "toString"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 793,
                                    "end": 801,
                                    "loc": {
                                      "start": {
                                        "line": 28,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 28,
                                        "column": 45
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "binary",
                                      "raw": "\"binary\""
                                    },
                                    "value": "binary"
                                  }
                                ]
                              },
                              {
                                "type": "StringLiteral",
                                "start": 804,
                                "end": 812,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 56
                                  }
                                },
                                "extra": {
                                  "rawValue": "binary",
                                  "raw": "\"binary\""
                                },
                                "value": "binary"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 827,
                          "end": 834,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 12
                            },
                            "end": {
                              "line": 29,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 850,
                      "end": 961,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 15
                        },
                        "end": {
                          "line": 33,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 864,
                          "end": 902,
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 12
                            },
                            "end": {
                              "line": 31,
                              "column": 50
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 864,
                            "end": 901,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 12
                              },
                              "end": {
                                "line": 31,
                                "column": 49
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 864,
                              "end": 870,
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 12
                                },
                                "end": {
                                  "line": 31,
                                  "column": 18
                                },
                                "identifierName": "buffer"
                              },
                              "name": "buffer"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 873,
                              "end": 901,
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 21
                                },
                                "end": {
                                  "line": 31,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 873,
                                "end": 894,
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 873,
                                  "end": 883,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 31
                                    },
                                    "identifierName": "FastParser"
                                  },
                                  "name": "FastParser"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 884,
                                  "end": 894,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 42
                                    },
                                    "identifierName": "fixed_data"
                                  },
                                  "name": "fixed_data"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 895,
                                  "end": 896,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 44
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                {
                                  "type": "NumericLiteral",
                                  "start": 898,
                                  "end": 900,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 33,
                                    "raw": "33"
                                  },
                                  "value": 33
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 915,
                          "end": 951,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 12
                            },
                            "end": {
                              "line": 32,
                              "column": 48
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 922,
                            "end": 950,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 19
                              },
                              "end": {
                                "line": 32,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 922,
                              "end": 942,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 19
                                },
                                "end": {
                                  "line": 32,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 922,
                                "end": 931,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 28
                                  },
                                  "identifierName": "PublicKey"
                                },
                                "name": "PublicKey"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 932,
                                "end": 942,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 39
                                  },
                                  "identifierName": "fromBuffer"
                                },
                                "name": "fromBuffer"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 943,
                                "end": 949,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 46
                                  },
                                  "identifierName": "buffer"
                                },
                                "name": "buffer"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                ],
                "directives": []
              }
            },
            {
              "type": "ClassMethod",
              "start": 973,
              "end": 1233,
              "loc": {
                "start": {
                  "line": 36,
                  "column": 4
                },
                "end": {
                  "line": 46,
                  "column": 5
                }
              },
              "static": true,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 980,
                "end": 989,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 11
                  },
                  "end": {
                    "line": 36,
                    "column": 20
                  },
                  "identifierName": "ripemd160"
                },
                "name": "ripemd160"
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 990,
                  "end": 991,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 21
                    },
                    "end": {
                      "line": 36,
                      "column": 22
                    },
                    "identifierName": "b"
                  },
                  "name": "b"
                },
                {
                  "type": "Identifier",
                  "start": 993,
                  "end": 1002,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 24
                    },
                    "end": {
                      "line": 36,
                      "column": 33
                    },
                    "identifierName": "ripemd160"
                  },
                  "name": "ripemd160"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 1004,
                "end": 1233,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 35
                  },
                  "end": {
                    "line": 46,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 1014,
                    "end": 1053,
                    "loc": {
                      "start": {
                        "line": 37,
                        "column": 8
                      },
                      "end": {
                        "line": 39,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 1018,
                      "end": 1020,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 12
                        },
                        "end": {
                          "line": 37,
                          "column": 14
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "Identifier",
                        "start": 1019,
                        "end": 1020,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 13
                          },
                          "end": {
                            "line": 37,
                            "column": 14
                          },
                          "identifierName": "b"
                        },
                        "name": "b"
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 1022,
                      "end": 1053,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 16
                        },
                        "end": {
                          "line": 39,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 1036,
                          "end": 1043,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 12
                            },
                            "end": {
                              "line": 38,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 1062,
                    "end": 1227,
                    "loc": {
                      "start": {
                        "line": 40,
                        "column": 8
                      },
                      "end": {
                        "line": 45,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 1066,
                      "end": 1075,
                      "loc": {
                        "start": {
                          "line": 40,
                          "column": 12
                        },
                        "end": {
                          "line": 40,
                          "column": 21
                        },
                        "identifierName": "ripemd160"
                      },
                      "name": "ripemd160"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 1077,
                      "end": 1161,
                      "loc": {
                        "start": {
                          "line": 40,
                          "column": 23
                        },
                        "end": {
                          "line": 43,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 1091,
                          "end": 1131,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 12
                            },
                            "end": {
                              "line": 41,
                              "column": 52
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 1091,
                            "end": 1130,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 12
                              },
                              "end": {
                                "line": 41,
                                "column": 51
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1091,
                              "end": 1112,
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 12
                                },
                                "end": {
                                  "line": 41,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1091,
                                "end": 1101,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 22
                                  },
                                  "identifierName": "FastParser"
                                },
                                "name": "FastParser"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1102,
                                "end": 1112,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 33
                                  },
                                  "identifierName": "fixed_data"
                                },
                                "name": "fixed_data"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1113,
                                "end": 1114,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 35
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              {
                                "type": "NumericLiteral",
                                "start": 1116,
                                "end": 1118,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 39
                                  }
                                },
                                "extra": {
                                  "rawValue": 20,
                                  "raw": "20"
                                },
                                "value": 20
                              },
                              {
                                "type": "Identifier",
                                "start": 1120,
                                "end": 1129,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 50
                                  },
                                  "identifierName": "ripemd160"
                                },
                                "name": "ripemd160"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1144,
                          "end": 1151,
                          "loc": {
                            "start": {
                              "line": 42,
                              "column": 12
                            },
                            "end": {
                              "line": 42,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 1167,
                      "end": 1227,
                      "loc": {
                        "start": {
                          "line": 43,
                          "column": 15
                        },
                        "end": {
                          "line": 45,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 1181,
                          "end": 1217,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 12
                            },
                            "end": {
                              "line": 44,
                              "column": 48
                            }
                          },
                          "argument": {
                            "type": "CallExpression",
                            "start": 1188,
                            "end": 1216,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 19
                              },
                              "end": {
                                "line": 44,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1188,
                              "end": 1209,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 19
                                },
                                "end": {
                                  "line": 44,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1188,
                                "end": 1198,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 29
                                  },
                                  "identifierName": "FastParser"
                                },
                                "name": "FastParser"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1199,
                                "end": 1209,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 40
                                  },
                                  "identifierName": "fixed_data"
                                },
                                "name": "fixed_data"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1210,
                                "end": 1211,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 42
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              {
                                "type": "NumericLiteral",
                                "start": 1213,
                                "end": 1215,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 46
                                  }
                                },
                                "extra": {
                                  "rawValue": 20,
                                  "raw": "20"
                                },
                                "value": 20
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                ],
                "directives": []
              }
            },
            {
              "type": "ClassMethod",
              "start": 1239,
              "end": 1524,
              "loc": {
                "start": {
                  "line": 48,
                  "column": 4
                },
                "end": {
                  "line": 57,
                  "column": 5
                }
              },
              "static": true,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 1246,
                "end": 1260,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 11
                  },
                  "end": {
                    "line": 48,
                    "column": 25
                  },
                  "identifierName": "time_point_sec"
                },
                "name": "time_point_sec"
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 1261,
                  "end": 1262,
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 26
                    },
                    "end": {
                      "line": 48,
                      "column": 27
                    },
                    "identifierName": "b"
                  },
                  "name": "b"
                },
                {
                  "type": "Identifier",
                  "start": 1264,
                  "end": 1269,
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 29
                    },
                    "end": {
                      "line": 48,
                      "column": 34
                    },
                    "identifierName": "epoch"
                  },
                  "name": "epoch"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 1271,
                "end": 1524,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 36
                  },
                  "end": {
                    "line": 57,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 1281,
                    "end": 1518,
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 8
                      },
                      "end": {
                        "line": 56,
                        "column": 9
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 1285,
                      "end": 1290,
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 12
                        },
                        "end": {
                          "line": 49,
                          "column": 17
                        },
                        "identifierName": "epoch"
                      },
                      "name": "epoch"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 1292,
                      "end": 1401,
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 19
                        },
                        "end": {
                          "line": 53,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 1306,
                          "end": 1338,
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 12
                            },
                            "end": {
                              "line": 50,
                              "column": 44
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 1306,
                            "end": 1337,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 12
                              },
                              "end": {
                                "line": 50,
                                "column": 43
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 1306,
                              "end": 1311,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 12
                                },
                                "end": {
                                  "line": 50,
                                  "column": 17
                                },
                                "identifierName": "epoch"
                              },
                              "name": "epoch"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 1314,
                              "end": 1337,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 20
                                },
                                "end": {
                                  "line": 50,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1314,
                                "end": 1323,
                                "loc": {
                                  "start": {
                                    "line": 50,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 50,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1314,
                                  "end": 1318,
                                  "loc": {
                                    "start": {
                                      "line": 50,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 50,
                                      "column": 24
                                    },
                                    "identifierName": "Math"
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1319,
                                  "end": 1323,
                                  "loc": {
                                    "start": {
                                      "line": 50,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 50,
                                      "column": 29
                                    },
                                    "identifierName": "ceil"
                                  },
                                  "name": "ceil"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 1324,
                                  "end": 1336,
                                  "loc": {
                                    "start": {
                                      "line": 50,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 50,
                                      "column": 42
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 1324,
                                    "end": 1329,
                                    "loc": {
                                      "start": {
                                        "line": 50,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 35
                                      },
                                      "identifierName": "epoch"
                                    },
                                    "name": "epoch"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 1332,
                                    "end": 1336,
                                    "loc": {
                                      "start": {
                                        "line": 50,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 42
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 1000,
                                      "raw": "1000"
                                    },
                                    "value": 1000
                                  }
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 1351,
                          "end": 1371,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 12
                            },
                            "end": {
                              "line": 51,
                              "column": 32
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 1351,
                            "end": 1370,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 12
                              },
                              "end": {
                                "line": 51,
                                "column": 31
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1351,
                              "end": 1363,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 12
                                },
                                "end": {
                                  "line": 51,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1351,
                                "end": 1352,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 13
                                  },
                                  "identifierName": "b"
                                },
                                "name": "b"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1353,
                                "end": 1363,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 24
                                  },
                                  "identifierName": "writeInt32"
                                },
                                "name": "writeInt32"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1364,
                                "end": 1369,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 30
                                  },
                                  "identifierName": "epoch"
                                },
                                "name": "epoch"
                              }
                            ]
                          }
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1384,
                          "end": 1391,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 12
                            },
                            "end": {
                              "line": 52,
                              "column": 19
                            }
                          },
                          "argument": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 1407,
                      "end": 1518,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 15
                        },
                        "end": {
                          "line": 56,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 1421,
                          "end": 1443,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 12
                            },
                            "end": {
                              "line": 54,
                              "column": 34
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 1421,
                            "end": 1442,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 12
                              },
                              "end": {
                                "line": 54,
                                "column": 33
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 1421,
                              "end": 1426,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 12
                                },
                                "end": {
                                  "line": 54,
                                  "column": 17
                                },
                                "identifierName": "epoch"
                              },
                              "name": "epoch"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 1429,
                              "end": 1442,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 20
                                },
                                "end": {
                                  "line": 54,
                                  "column": 33
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1429,
                                "end": 1440,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1429,
                                  "end": 1430,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 21
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1431,
                                  "end": 1440,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 31
                                    },
                                    "identifierName": "readInt32"
                                  },
                                  "name": "readInt32"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          "trailingComments": [
                            {
                              "type": "CommentLine",
                              "value": " fc::time_point_sec",
                              "start": 1444,
                              "end": 1465,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 35
                                },
                                "end": {
                                  "line": 54,
                                  "column": 56
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ReturnStatement",
                          "start": 1478,
                          "end": 1508,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 12
                            },
                            "end": {
                              "line": 55,
                              "column": 42
                            }
                          },
                          "argument": {
                            "type": "NewExpression",
                            "start": 1485,
                            "end": 1507,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 19
                              },
                              "end": {
                                "line": 55,
                                "column": 41
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 1489,
                              "end": 1493,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 23
                                },
                                "end": {
                                  "line": 55,
                                  "column": 27
                                },
                                "identifierName": "Date"
                              },
                              "name": "Date"
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 1494,
                                "end": 1506,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 40
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 1494,
                                  "end": 1499,
                                  "loc": {
                                    "start": {
                                      "line": 55,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 33
                                    },
                                    "identifierName": "epoch"
                                  },
                                  "name": "epoch"
                                },
                                "operator": "*",
                                "right": {
                                  "type": "NumericLiteral",
                                  "start": 1502,
                                  "end": 1506,
                                  "loc": {
                                    "start": {
                                      "line": 55,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 40
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1000,
                                    "raw": "1000"
                                  },
                                  "value": 1000
                                }
                              }
                            ],
                            "leadingComments": null
                          },
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": " fc::time_point_sec",
                              "start": 1444,
                              "end": 1465,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 35
                                },
                                "end": {
                                  "line": 54,
                                  "column": 56
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "directives": []
                    }
                  }
                ],
                "directives": []
              }
            }
          ]
        },
        "name": "_",
        "leadingComments": [],
        "trailingComments": []
      },
      {
        "type": "Identifier",
        "start": 1528,
        "end": 1554,
        "loc": {
          "start": {
            "line": 60,
            "column": 0
          },
          "end": {
            "line": 60,
            "column": 26
          }
        },
        "declaration": {
          "type": "Identifier",
          "start": 1543,
          "end": 1553,
          "loc": {
            "start": {
              "line": 60,
              "column": 15
            },
            "end": {
              "line": 60,
              "column": 25
            },
            "identifierName": "FastParser"
          },
          "name": "FastParser"
        },
        "name": "_",
        "leadingComments": [],
        "trailingComments": []
      },
      {
        "type": "ExportDefaultDeclaration",
        "start": 1528,
        "end": 1554,
        "loc": {
          "start": {
            "line": 60,
            "column": 0
          },
          "end": {
            "line": 60,
            "column": 26
          }
        },
        "declaration": {
          "type": "ClassDeclaration",
          "start": 96,
          "end": 1526,
          "loc": {
            "start": {
              "line": 4,
              "column": 0
            },
            "end": {
              "line": 58,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 102,
            "end": 112,
            "loc": {
              "start": {
                "line": 4,
                "column": 6
              },
              "end": {
                "line": 4,
                "column": 16
              },
              "identifierName": "FastParser"
            },
            "name": "FastParser"
          },
          "superClass": null,
          "body": {
            "type": "ClassBody",
            "start": 113,
            "end": 1526,
            "loc": {
              "start": {
                "line": 4,
                "column": 17
              },
              "end": {
                "line": 58,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ClassMethod",
                "start": 119,
                "end": 593,
                "loc": {
                  "start": {
                    "line": 5,
                    "column": 4
                  },
                  "end": {
                    "line": 20,
                    "column": 5
                  }
                },
                "static": true,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 126,
                  "end": 136,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 11
                    },
                    "end": {
                      "line": 5,
                      "column": 21
                    },
                    "identifierName": "fixed_data"
                  },
                  "name": "fixed_data"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 137,
                    "end": 138,
                    "loc": {
                      "start": {
                        "line": 5,
                        "column": 22
                      },
                      "end": {
                        "line": 5,
                        "column": 23
                      },
                      "identifierName": "b"
                    },
                    "name": "b"
                  },
                  {
                    "type": "Identifier",
                    "start": 140,
                    "end": 143,
                    "loc": {
                      "start": {
                        "line": 5,
                        "column": 25
                      },
                      "end": {
                        "line": 5,
                        "column": 28
                      },
                      "identifierName": "len"
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 145,
                    "end": 151,
                    "loc": {
                      "start": {
                        "line": 5,
                        "column": 30
                      },
                      "end": {
                        "line": 5,
                        "column": 36
                      },
                      "identifierName": "buffer"
                    },
                    "name": "buffer"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 153,
                  "end": 593,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 38
                    },
                    "end": {
                      "line": 20,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 163,
                      "end": 202,
                      "loc": {
                        "start": {
                          "line": 6,
                          "column": 8
                        },
                        "end": {
                          "line": 8,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 167,
                        "end": 169,
                        "loc": {
                          "start": {
                            "line": 6,
                            "column": 12
                          },
                          "end": {
                            "line": 6,
                            "column": 14
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 168,
                          "end": 169,
                          "loc": {
                            "start": {
                              "line": 6,
                              "column": 13
                            },
                            "end": {
                              "line": 6,
                              "column": 14
                            },
                            "identifierName": "b"
                          },
                          "name": "b"
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 171,
                        "end": 202,
                        "loc": {
                          "start": {
                            "line": 6,
                            "column": 16
                          },
                          "end": {
                            "line": 8,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 185,
                            "end": 192,
                            "loc": {
                              "start": {
                                "line": 7,
                                "column": 12
                              },
                              "end": {
                                "line": 7,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 211,
                      "end": 587,
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 8
                        },
                        "end": {
                          "line": 19,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 215,
                        "end": 221,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 12
                          },
                          "end": {
                            "line": 9,
                            "column": 18
                          },
                          "identifierName": "buffer"
                        },
                        "name": "buffer"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 223,
                        "end": 425,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 20
                          },
                          "end": {
                            "line": 15,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 237,
                            "end": 288,
                            "loc": {
                              "start": {
                                "line": 10,
                                "column": 12
                              },
                              "end": {
                                "line": 10,
                                "column": 63
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 241,
                                "end": 287,
                                "loc": {
                                  "start": {
                                    "line": 10,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 10,
                                    "column": 62
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 241,
                                  "end": 245,
                                  "loc": {
                                    "start": {
                                      "line": 10,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 10,
                                      "column": 20
                                    },
                                    "identifierName": "data"
                                  },
                                  "name": "data"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 248,
                                  "end": 287,
                                  "loc": {
                                    "start": {
                                      "line": 10,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 10,
                                      "column": 62
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 248,
                                    "end": 277,
                                    "loc": {
                                      "start": {
                                        "line": 10,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 10,
                                        "column": 52
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 248,
                                      "end": 268,
                                      "loc": {
                                        "start": {
                                          "line": 10,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 10,
                                          "column": 43
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 248,
                                        "end": 260,
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 248,
                                          "end": 254,
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 29
                                            },
                                            "identifierName": "buffer"
                                          },
                                          "name": "buffer"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 255,
                                          "end": 260,
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 35
                                            },
                                            "identifierName": "slice"
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 261,
                                          "end": 262,
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 37
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 264,
                                          "end": 267,
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 42
                                            },
                                            "identifierName": "len"
                                          },
                                          "name": "len"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 269,
                                      "end": 277,
                                      "loc": {
                                        "start": {
                                          "line": 10,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 10,
                                          "column": 52
                                        },
                                        "identifierName": "toString"
                                      },
                                      "name": "toString"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 278,
                                      "end": 286,
                                      "loc": {
                                        "start": {
                                          "line": 10,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 10,
                                          "column": 61
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "binary",
                                        "raw": "\"binary\""
                                      },
                                      "value": "binary"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 301,
                            "end": 326,
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 12
                              },
                              "end": {
                                "line": 11,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 301,
                              "end": 325,
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 12
                                },
                                "end": {
                                  "line": 11,
                                  "column": 36
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 301,
                                "end": 309,
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 20
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 301,
                                  "end": 302,
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 13
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 303,
                                  "end": 309,
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 20
                                    },
                                    "identifierName": "append"
                                  },
                                  "name": "append"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 310,
                                  "end": 314,
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 25
                                    },
                                    "identifierName": "data"
                                  },
                                  "name": "data"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 316,
                                  "end": 324,
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 35
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "binary",
                                    "raw": "\"binary\""
                                  },
                                  "value": "binary"
                                }
                              ]
                            }
                          },
                          {
                            "type": "WhileStatement",
                            "start": 339,
                            "end": 415,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 12
                              },
                              "end": {
                                "line": 14,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 346,
                              "end": 365,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 19
                                },
                                "end": {
                                  "line": 12,
                                  "column": 38
                                }
                              },
                              "left": {
                                "type": "UpdateExpression",
                                "start": 346,
                                "end": 351,
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 24
                                  }
                                },
                                "operator": "--",
                                "prefix": false,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 346,
                                  "end": 349,
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 22
                                    },
                                    "identifierName": "len"
                                  },
                                  "name": "len"
                                }
                              },
                              "operator": ">",
                              "right": {
                                "type": "MemberExpression",
                                "start": 354,
                                "end": 365,
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 354,
                                  "end": 358,
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 31
                                    },
                                    "identifierName": "data"
                                  },
                                  "name": "data"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 359,
                                  "end": 365,
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 38
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 367,
                              "end": 415,
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 40
                                },
                                "end": {
                                  "line": 14,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 385,
                                  "end": 401,
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 32
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 385,
                                    "end": 400,
                                    "loc": {
                                      "start": {
                                        "line": 13,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 13,
                                        "column": 31
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 385,
                                      "end": 397,
                                      "loc": {
                                        "start": {
                                          "line": 13,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 13,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 385,
                                        "end": 386,
                                        "loc": {
                                          "start": {
                                            "line": 13,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 13,
                                            "column": 17
                                          },
                                          "identifierName": "b"
                                        },
                                        "name": "b"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 387,
                                        "end": 397,
                                        "loc": {
                                          "start": {
                                            "line": 13,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 13,
                                            "column": 28
                                          },
                                          "identifierName": "writeUint8"
                                        },
                                        "name": "writeUint8"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 398,
                                        "end": 399,
                                        "loc": {
                                          "start": {
                                            "line": 13,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 13,
                                            "column": 30
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "value": 0
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 431,
                        "end": 587,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 15
                          },
                          "end": {
                            "line": 19,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 445,
                            "end": 491,
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 12
                              },
                              "end": {
                                "line": 16,
                                "column": 58
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 449,
                                "end": 490,
                                "loc": {
                                  "start": {
                                    "line": 16,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 16,
                                    "column": 57
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 449,
                                  "end": 455,
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 16,
                                      "column": 22
                                    },
                                    "identifierName": "b_copy"
                                  },
                                  "name": "b_copy"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 458,
                                  "end": 490,
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 16,
                                      "column": 57
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 458,
                                    "end": 464,
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 458,
                                      "end": 459,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 26
                                        },
                                        "identifierName": "b"
                                      },
                                      "name": "b"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 460,
                                      "end": 464,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 31
                                        },
                                        "identifierName": "copy"
                                      },
                                      "name": "copy"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 465,
                                      "end": 473,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 465,
                                        "end": 466,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 33
                                          },
                                          "identifierName": "b"
                                        },
                                        "name": "b"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 467,
                                        "end": 473,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 40
                                          },
                                          "identifierName": "offset"
                                        },
                                        "name": "offset"
                                      },
                                      "computed": false
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 475,
                                      "end": 489,
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 56
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 475,
                                        "end": 483,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 475,
                                          "end": 476,
                                          "loc": {
                                            "start": {
                                              "line": 16,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 16,
                                              "column": 43
                                            },
                                            "identifierName": "b"
                                          },
                                          "name": "b"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 477,
                                          "end": 483,
                                          "loc": {
                                            "start": {
                                              "line": 16,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 16,
                                              "column": 50
                                            },
                                            "identifierName": "offset"
                                          },
                                          "name": "offset"
                                        },
                                        "computed": false
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 486,
                                        "end": 489,
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 56
                                          },
                                          "identifierName": "len"
                                        },
                                        "name": "len"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 504,
                            "end": 516,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 12
                              },
                              "end": {
                                "line": 17,
                                "column": 24
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 504,
                              "end": 515,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 12
                                },
                                "end": {
                                  "line": 17,
                                  "column": 23
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 504,
                                "end": 510,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 504,
                                  "end": 505,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 13
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 506,
                                  "end": 510,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 18
                                    },
                                    "identifierName": "skip"
                                  },
                                  "name": "skip"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 511,
                                  "end": 514,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 22
                                    },
                                    "identifierName": "len"
                                  },
                                  "name": "len"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 529,
                            "end": 577,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 12
                              },
                              "end": {
                                "line": 18,
                                "column": 60
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 536,
                              "end": 576,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 19
                                },
                                "end": {
                                  "line": 18,
                                  "column": 59
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 536,
                                "end": 547,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 536,
                                  "end": 542,
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 25
                                    },
                                    "identifierName": "Buffer"
                                  },
                                  "name": "Buffer"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 543,
                                  "end": 547,
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 30
                                    },
                                    "identifierName": "from"
                                  },
                                  "name": "from"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 548,
                                  "end": 565,
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 48
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 548,
                                    "end": 563,
                                    "loc": {
                                      "start": {
                                        "line": 18,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 18,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 548,
                                      "end": 554,
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 37
                                        },
                                        "identifierName": "b_copy"
                                      },
                                      "name": "b_copy"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 555,
                                      "end": 563,
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 46
                                        },
                                        "identifierName": "toBinary"
                                      },
                                      "name": "toBinary"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 567,
                                  "end": 575,
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 58
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "binary",
                                    "raw": "\"binary\""
                                  },
                                  "value": "binary"
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                }
              },
              {
                "type": "ClassMethod",
                "start": 599,
                "end": 967,
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 4
                  },
                  "end": {
                    "line": 34,
                    "column": 5
                  }
                },
                "static": true,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 606,
                  "end": 616,
                  "loc": {
                    "start": {
                      "line": 22,
                      "column": 11
                    },
                    "end": {
                      "line": 22,
                      "column": 21
                    },
                    "identifierName": "public_key"
                  },
                  "name": "public_key"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 617,
                    "end": 618,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 22
                      },
                      "end": {
                        "line": 22,
                        "column": 23
                      },
                      "identifierName": "b"
                    },
                    "name": "b"
                  },
                  {
                    "type": "Identifier",
                    "start": 620,
                    "end": 630,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 25
                      },
                      "end": {
                        "line": 22,
                        "column": 35
                      },
                      "identifierName": "public_key"
                    },
                    "name": "public_key"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 632,
                  "end": 967,
                  "loc": {
                    "start": {
                      "line": 22,
                      "column": 37
                    },
                    "end": {
                      "line": 34,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 642,
                      "end": 681,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 646,
                        "end": 648,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 12
                          },
                          "end": {
                            "line": 23,
                            "column": 14
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 647,
                          "end": 648,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 13
                            },
                            "end": {
                              "line": 23,
                              "column": 14
                            },
                            "identifierName": "b"
                          },
                          "name": "b"
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 650,
                        "end": 681,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 16
                          },
                          "end": {
                            "line": 25,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 664,
                            "end": 671,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 12
                              },
                              "end": {
                                "line": 24,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 690,
                      "end": 961,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 33,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 694,
                        "end": 704,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 12
                          },
                          "end": {
                            "line": 26,
                            "column": 22
                          },
                          "identifierName": "public_key"
                        },
                        "name": "public_key"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 706,
                        "end": 844,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 24
                          },
                          "end": {
                            "line": 30,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 720,
                            "end": 755,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 12
                              },
                              "end": {
                                "line": 27,
                                "column": 47
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 724,
                                "end": 754,
                                "loc": {
                                  "start": {
                                    "line": 27,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 46
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 724,
                                  "end": 730,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 22
                                    },
                                    "identifierName": "buffer"
                                  },
                                  "name": "buffer"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 733,
                                  "end": 754,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 733,
                                    "end": 752,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 733,
                                      "end": 743,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 35
                                        },
                                        "identifierName": "public_key"
                                      },
                                      "name": "public_key"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 744,
                                      "end": 752,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 44
                                        },
                                        "identifierName": "toBuffer"
                                      },
                                      "name": "toBuffer"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 768,
                            "end": 814,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 12
                              },
                              "end": {
                                "line": 28,
                                "column": 58
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 768,
                              "end": 813,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 12
                                },
                                "end": {
                                  "line": 28,
                                  "column": 57
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 768,
                                "end": 776,
                                "loc": {
                                  "start": {
                                    "line": 28,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 20
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 768,
                                  "end": 769,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 13
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 770,
                                  "end": 776,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 20
                                    },
                                    "identifierName": "append"
                                  },
                                  "name": "append"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 777,
                                  "end": 802,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 46
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 777,
                                    "end": 792,
                                    "loc": {
                                      "start": {
                                        "line": 28,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 28,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 777,
                                      "end": 783,
                                      "loc": {
                                        "start": {
                                          "line": 28,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 28,
                                          "column": 27
                                        },
                                        "identifierName": "buffer"
                                      },
                                      "name": "buffer"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 784,
                                      "end": 792,
                                      "loc": {
                                        "start": {
                                          "line": 28,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 28,
                                          "column": 36
                                        },
                                        "identifierName": "toString"
                                      },
                                      "name": "toString"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 793,
                                      "end": 801,
                                      "loc": {
                                        "start": {
                                          "line": 28,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 28,
                                          "column": 45
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "binary",
                                        "raw": "\"binary\""
                                      },
                                      "value": "binary"
                                    }
                                  ]
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 804,
                                  "end": 812,
                                  "loc": {
                                    "start": {
                                      "line": 28,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 28,
                                      "column": 56
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "binary",
                                    "raw": "\"binary\""
                                  },
                                  "value": "binary"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 827,
                            "end": 834,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 12
                              },
                              "end": {
                                "line": 29,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 850,
                        "end": 961,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 15
                          },
                          "end": {
                            "line": 33,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 864,
                            "end": 902,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 12
                              },
                              "end": {
                                "line": 31,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 864,
                              "end": 901,
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 12
                                },
                                "end": {
                                  "line": 31,
                                  "column": 49
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 864,
                                "end": 870,
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 18
                                  },
                                  "identifierName": "buffer"
                                },
                                "name": "buffer"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 873,
                                "end": 901,
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 873,
                                  "end": 894,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 873,
                                    "end": 883,
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 31
                                      },
                                      "identifierName": "FastParser"
                                    },
                                    "name": "FastParser"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 884,
                                    "end": 894,
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 42
                                      },
                                      "identifierName": "fixed_data"
                                    },
                                    "name": "fixed_data"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 895,
                                    "end": 896,
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 44
                                      },
                                      "identifierName": "b"
                                    },
                                    "name": "b"
                                  },
                                  {
                                    "type": "NumericLiteral",
                                    "start": 898,
                                    "end": 900,
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 33,
                                      "raw": "33"
                                    },
                                    "value": 33
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 915,
                            "end": 951,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 12
                              },
                              "end": {
                                "line": 32,
                                "column": 48
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 922,
                              "end": 950,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 19
                                },
                                "end": {
                                  "line": 32,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 922,
                                "end": 942,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 922,
                                  "end": 931,
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 28
                                    },
                                    "identifierName": "PublicKey"
                                  },
                                  "name": "PublicKey"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 932,
                                  "end": 942,
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 39
                                    },
                                    "identifierName": "fromBuffer"
                                  },
                                  "name": "fromBuffer"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 943,
                                  "end": 949,
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 46
                                    },
                                    "identifierName": "buffer"
                                  },
                                  "name": "buffer"
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                }
              },
              {
                "type": "ClassMethod",
                "start": 973,
                "end": 1233,
                "loc": {
                  "start": {
                    "line": 36,
                    "column": 4
                  },
                  "end": {
                    "line": 46,
                    "column": 5
                  }
                },
                "static": true,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 980,
                  "end": 989,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 11
                    },
                    "end": {
                      "line": 36,
                      "column": 20
                    },
                    "identifierName": "ripemd160"
                  },
                  "name": "ripemd160"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 990,
                    "end": 991,
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 21
                      },
                      "end": {
                        "line": 36,
                        "column": 22
                      },
                      "identifierName": "b"
                    },
                    "name": "b"
                  },
                  {
                    "type": "Identifier",
                    "start": 993,
                    "end": 1002,
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 24
                      },
                      "end": {
                        "line": 36,
                        "column": 33
                      },
                      "identifierName": "ripemd160"
                    },
                    "name": "ripemd160"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1004,
                  "end": 1233,
                  "loc": {
                    "start": {
                      "line": 36,
                      "column": 35
                    },
                    "end": {
                      "line": 46,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 1014,
                      "end": 1053,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 8
                        },
                        "end": {
                          "line": 39,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 1018,
                        "end": 1020,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 12
                          },
                          "end": {
                            "line": 37,
                            "column": 14
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 1019,
                          "end": 1020,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 13
                            },
                            "end": {
                              "line": 37,
                              "column": 14
                            },
                            "identifierName": "b"
                          },
                          "name": "b"
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1022,
                        "end": 1053,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 16
                          },
                          "end": {
                            "line": 39,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 1036,
                            "end": 1043,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 12
                              },
                              "end": {
                                "line": 38,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 1062,
                      "end": 1227,
                      "loc": {
                        "start": {
                          "line": 40,
                          "column": 8
                        },
                        "end": {
                          "line": 45,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 1066,
                        "end": 1075,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 12
                          },
                          "end": {
                            "line": 40,
                            "column": 21
                          },
                          "identifierName": "ripemd160"
                        },
                        "name": "ripemd160"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1077,
                        "end": 1161,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 23
                          },
                          "end": {
                            "line": 43,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1091,
                            "end": 1131,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 12
                              },
                              "end": {
                                "line": 41,
                                "column": 52
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 1091,
                              "end": 1130,
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 12
                                },
                                "end": {
                                  "line": 41,
                                  "column": 51
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1091,
                                "end": 1112,
                                "loc": {
                                  "start": {
                                    "line": 41,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 41,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1091,
                                  "end": 1101,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 22
                                    },
                                    "identifierName": "FastParser"
                                  },
                                  "name": "FastParser"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1102,
                                  "end": 1112,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 33
                                    },
                                    "identifierName": "fixed_data"
                                  },
                                  "name": "fixed_data"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1113,
                                  "end": 1114,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 35
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                {
                                  "type": "NumericLiteral",
                                  "start": 1116,
                                  "end": 1118,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 39
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 20,
                                    "raw": "20"
                                  },
                                  "value": 20
                                },
                                {
                                  "type": "Identifier",
                                  "start": 1120,
                                  "end": 1129,
                                  "loc": {
                                    "start": {
                                      "line": 41,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 41,
                                      "column": 50
                                    },
                                    "identifierName": "ripemd160"
                                  },
                                  "name": "ripemd160"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 1144,
                            "end": 1151,
                            "loc": {
                              "start": {
                                "line": 42,
                                "column": 12
                              },
                              "end": {
                                "line": 42,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 1167,
                        "end": 1227,
                        "loc": {
                          "start": {
                            "line": 43,
                            "column": 15
                          },
                          "end": {
                            "line": 45,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 1181,
                            "end": 1217,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 12
                              },
                              "end": {
                                "line": 44,
                                "column": 48
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 1188,
                              "end": 1216,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 19
                                },
                                "end": {
                                  "line": 44,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1188,
                                "end": 1209,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1188,
                                  "end": 1198,
                                  "loc": {
                                    "start": {
                                      "line": 44,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 44,
                                      "column": 29
                                    },
                                    "identifierName": "FastParser"
                                  },
                                  "name": "FastParser"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1199,
                                  "end": 1209,
                                  "loc": {
                                    "start": {
                                      "line": 44,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 44,
                                      "column": 40
                                    },
                                    "identifierName": "fixed_data"
                                  },
                                  "name": "fixed_data"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1210,
                                  "end": 1211,
                                  "loc": {
                                    "start": {
                                      "line": 44,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 44,
                                      "column": 42
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                {
                                  "type": "NumericLiteral",
                                  "start": 1213,
                                  "end": 1215,
                                  "loc": {
                                    "start": {
                                      "line": 44,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 44,
                                      "column": 46
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 20,
                                    "raw": "20"
                                  },
                                  "value": 20
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                }
              },
              {
                "type": "ClassMethod",
                "start": 1239,
                "end": 1524,
                "loc": {
                  "start": {
                    "line": 48,
                    "column": 4
                  },
                  "end": {
                    "line": 57,
                    "column": 5
                  }
                },
                "static": true,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 1246,
                  "end": 1260,
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 11
                    },
                    "end": {
                      "line": 48,
                      "column": 25
                    },
                    "identifierName": "time_point_sec"
                  },
                  "name": "time_point_sec"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1261,
                    "end": 1262,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 26
                      },
                      "end": {
                        "line": 48,
                        "column": 27
                      },
                      "identifierName": "b"
                    },
                    "name": "b"
                  },
                  {
                    "type": "Identifier",
                    "start": 1264,
                    "end": 1269,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 29
                      },
                      "end": {
                        "line": 48,
                        "column": 34
                      },
                      "identifierName": "epoch"
                    },
                    "name": "epoch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1271,
                  "end": 1524,
                  "loc": {
                    "start": {
                      "line": 48,
                      "column": 36
                    },
                    "end": {
                      "line": 57,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 1281,
                      "end": 1518,
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 8
                        },
                        "end": {
                          "line": 56,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 1285,
                        "end": 1290,
                        "loc": {
                          "start": {
                            "line": 49,
                            "column": 12
                          },
                          "end": {
                            "line": 49,
                            "column": 17
                          },
                          "identifierName": "epoch"
                        },
                        "name": "epoch"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1292,
                        "end": 1401,
                        "loc": {
                          "start": {
                            "line": 49,
                            "column": 19
                          },
                          "end": {
                            "line": 53,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1306,
                            "end": 1338,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 12
                              },
                              "end": {
                                "line": 50,
                                "column": 44
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1306,
                              "end": 1337,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 12
                                },
                                "end": {
                                  "line": 50,
                                  "column": 43
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1306,
                                "end": 1311,
                                "loc": {
                                  "start": {
                                    "line": 50,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 50,
                                    "column": 17
                                  },
                                  "identifierName": "epoch"
                                },
                                "name": "epoch"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 1314,
                                "end": 1337,
                                "loc": {
                                  "start": {
                                    "line": 50,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 50,
                                    "column": 43
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1314,
                                  "end": 1323,
                                  "loc": {
                                    "start": {
                                      "line": 50,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 50,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1314,
                                    "end": 1318,
                                    "loc": {
                                      "start": {
                                        "line": 50,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 24
                                      },
                                      "identifierName": "Math"
                                    },
                                    "name": "Math"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1319,
                                    "end": 1323,
                                    "loc": {
                                      "start": {
                                        "line": 50,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 29
                                      },
                                      "identifierName": "ceil"
                                    },
                                    "name": "ceil"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "BinaryExpression",
                                    "start": 1324,
                                    "end": 1336,
                                    "loc": {
                                      "start": {
                                        "line": 50,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 42
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 1324,
                                      "end": 1329,
                                      "loc": {
                                        "start": {
                                          "line": 50,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 50,
                                          "column": 35
                                        },
                                        "identifierName": "epoch"
                                      },
                                      "name": "epoch"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "NumericLiteral",
                                      "start": 1332,
                                      "end": 1336,
                                      "loc": {
                                        "start": {
                                          "line": 50,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 50,
                                          "column": 42
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 1000,
                                        "raw": "1000"
                                      },
                                      "value": 1000
                                    }
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1351,
                            "end": 1371,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 12
                              },
                              "end": {
                                "line": 51,
                                "column": 32
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 1351,
                              "end": 1370,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 12
                                },
                                "end": {
                                  "line": 51,
                                  "column": 31
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1351,
                                "end": 1363,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 24
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1351,
                                  "end": 1352,
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 13
                                    },
                                    "identifierName": "b"
                                  },
                                  "name": "b"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1353,
                                  "end": 1363,
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 24
                                    },
                                    "identifierName": "writeInt32"
                                  },
                                  "name": "writeInt32"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1364,
                                  "end": 1369,
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 30
                                    },
                                    "identifierName": "epoch"
                                  },
                                  "name": "epoch"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 1384,
                            "end": 1391,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 12
                              },
                              "end": {
                                "line": 52,
                                "column": 19
                              }
                            },
                            "argument": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 1407,
                        "end": 1518,
                        "loc": {
                          "start": {
                            "line": 53,
                            "column": 15
                          },
                          "end": {
                            "line": 56,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1421,
                            "end": 1443,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 12
                              },
                              "end": {
                                "line": 54,
                                "column": 34
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1421,
                              "end": 1442,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 12
                                },
                                "end": {
                                  "line": 54,
                                  "column": 33
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1421,
                                "end": 1426,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 17
                                  },
                                  "identifierName": "epoch"
                                },
                                "name": "epoch"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 1429,
                                "end": 1442,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1429,
                                  "end": 1440,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1429,
                                    "end": 1430,
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 21
                                      },
                                      "identifierName": "b"
                                    },
                                    "name": "b"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1431,
                                    "end": 1440,
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 31
                                      },
                                      "identifierName": "readInt32"
                                    },
                                    "name": "readInt32"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " fc::time_point_sec",
                                "start": 1444,
                                "end": 1465,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 56
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 1478,
                            "end": 1508,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 12
                              },
                              "end": {
                                "line": 55,
                                "column": 42
                              }
                            },
                            "argument": {
                              "type": "NewExpression",
                              "start": 1485,
                              "end": 1507,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 19
                                },
                                "end": {
                                  "line": 55,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 1489,
                                "end": 1493,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 27
                                  },
                                  "identifierName": "Date"
                                },
                                "name": "Date"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 1494,
                                  "end": 1506,
                                  "loc": {
                                    "start": {
                                      "line": 55,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 40
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 1494,
                                    "end": 1499,
                                    "loc": {
                                      "start": {
                                        "line": 55,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 55,
                                        "column": 33
                                      },
                                      "identifierName": "epoch"
                                    },
                                    "name": "epoch"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 1502,
                                    "end": 1506,
                                    "loc": {
                                      "start": {
                                        "line": 55,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 55,
                                        "column": 40
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 1000,
                                      "raw": "1000"
                                    },
                                    "value": 1000
                                  }
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " fc::time_point_sec",
                                "start": 1444,
                                "end": 1465,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 56
                                  }
                                }
                              }
                            ]
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": []
                }
              }
            ]
          },
          "__PseudoExport__": false,
          "leadingComments": [],
          "trailingComments": []
        },
        "leadingComments": null
      }
    ],
    "directives": []
  },
  "comments": [
    {
      "type": "CommentLine",
      "value": " fc::time_point_sec",
      "start": 1444,
      "end": 1465,
      "loc": {
        "start": {
          "line": 54,
          "column": 35
        },
        "end": {
          "line": 54,
          "column": 56
        }
      }
    }
  ],
  "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": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "PublicKey",
      "start": 7,
      "end": 16,
      "loc": {
        "start": {
          "line": 1,
          "column": 7
        },
        "end": {
          "line": 1,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 17,
      "end": 21,
      "loc": {
        "start": {
          "line": 1,
          "column": 17
        },
        "end": {
          "line": 1,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../../ecc/src/PublicKey",
      "start": 22,
      "end": 47,
      "loc": {
        "start": {
          "line": 1,
          "column": 22
        },
        "end": {
          "line": 1,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 47,
      "end": 48,
      "loc": {
        "start": {
          "line": 1,
          "column": 47
        },
        "end": {
          "line": 1,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 49,
      "end": 54,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Buffer",
      "start": 55,
      "end": 61,
      "loc": {
        "start": {
          "line": 2,
          "column": 6
        },
        "end": {
          "line": 2,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 62,
      "end": 63,
      "loc": {
        "start": {
          "line": 2,
          "column": 13
        },
        "end": {
          "line": 2,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 64,
      "end": 71,
      "loc": {
        "start": {
          "line": 2,
          "column": 15
        },
        "end": {
          "line": 2,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 71,
      "end": 72,
      "loc": {
        "start": {
          "line": 2,
          "column": 22
        },
        "end": {
          "line": 2,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "safe-buffer",
      "start": 72,
      "end": 85,
      "loc": {
        "start": {
          "line": 2,
          "column": 23
        },
        "end": {
          "line": 2,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 85,
      "end": 86,
      "loc": {
        "start": {
          "line": 2,
          "column": 36
        },
        "end": {
          "line": 2,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 86,
      "end": 87,
      "loc": {
        "start": {
          "line": 2,
          "column": 37
        },
        "end": {
          "line": 2,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Buffer",
      "start": 87,
      "end": 93,
      "loc": {
        "start": {
          "line": 2,
          "column": 38
        },
        "end": {
          "line": 2,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 93,
      "end": 94,
      "loc": {
        "start": {
          "line": 2,
          "column": 44
        },
        "end": {
          "line": 2,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "class",
        "keyword": "class",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "class",
      "start": 96,
      "end": 101,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "FastParser",
      "start": 102,
      "end": 112,
      "loc": {
        "start": {
          "line": 4,
          "column": 6
        },
        "end": {
          "line": 4,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 113,
      "end": 114,
      "loc": {
        "start": {
          "line": 4,
          "column": 17
        },
        "end": {
          "line": 4,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "static",
      "start": 119,
      "end": 125,
      "loc": {
        "start": {
          "line": 5,
          "column": 4
        },
        "end": {
          "line": 5,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fixed_data",
      "start": 126,
      "end": 136,
      "loc": {
        "start": {
          "line": 5,
          "column": 11
        },
        "end": {
          "line": 5,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 136,
      "end": 137,
      "loc": {
        "start": {
          "line": 5,
          "column": 21
        },
        "end": {
          "line": 5,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 137,
      "end": 138,
      "loc": {
        "start": {
          "line": 5,
          "column": 22
        },
        "end": {
          "line": 5,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 138,
      "end": 139,
      "loc": {
        "start": {
          "line": 5,
          "column": 23
        },
        "end": {
          "line": 5,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "len",
      "start": 140,
      "end": 143,
      "loc": {
        "start": {
          "line": 5,
          "column": 25
        },
        "end": {
          "line": 5,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 143,
      "end": 144,
      "loc": {
        "start": {
          "line": 5,
          "column": 28
        },
        "end": {
          "line": 5,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 145,
      "end": 151,
      "loc": {
        "start": {
          "line": 5,
          "column": 30
        },
        "end": {
          "line": 5,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 151,
      "end": 152,
      "loc": {
        "start": {
          "line": 5,
          "column": 36
        },
        "end": {
          "line": 5,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 153,
      "end": 154,
      "loc": {
        "start": {
          "line": 5,
          "column": 38
        },
        "end": {
          "line": 5,
          "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": 163,
      "end": 165,
      "loc": {
        "start": {
          "line": 6,
          "column": 8
        },
        "end": {
          "line": 6,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 166,
      "end": 167,
      "loc": {
        "start": {
          "line": 6,
          "column": 11
        },
        "end": {
          "line": 6,
          "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": 167,
      "end": 168,
      "loc": {
        "start": {
          "line": 6,
          "column": 12
        },
        "end": {
          "line": 6,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 168,
      "end": 169,
      "loc": {
        "start": {
          "line": 6,
          "column": 13
        },
        "end": {
          "line": 6,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 169,
      "end": 170,
      "loc": {
        "start": {
          "line": 6,
          "column": 14
        },
        "end": {
          "line": 6,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 171,
      "end": 172,
      "loc": {
        "start": {
          "line": 6,
          "column": 16
        },
        "end": {
          "line": 6,
          "column": 17
        }
      }
    },
    {
      "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": 185,
      "end": 191,
      "loc": {
        "start": {
          "line": 7,
          "column": 12
        },
        "end": {
          "line": 7,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 191,
      "end": 192,
      "loc": {
        "start": {
          "line": 7,
          "column": 18
        },
        "end": {
          "line": 7,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 201,
      "end": 202,
      "loc": {
        "start": {
          "line": 8,
          "column": 8
        },
        "end": {
          "line": 8,
          "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": 211,
      "end": 213,
      "loc": {
        "start": {
          "line": 9,
          "column": 8
        },
        "end": {
          "line": 9,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 214,
      "end": 215,
      "loc": {
        "start": {
          "line": 9,
          "column": 11
        },
        "end": {
          "line": 9,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 215,
      "end": 221,
      "loc": {
        "start": {
          "line": 9,
          "column": 12
        },
        "end": {
          "line": 9,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 221,
      "end": 222,
      "loc": {
        "start": {
          "line": 9,
          "column": 18
        },
        "end": {
          "line": 9,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 223,
      "end": 224,
      "loc": {
        "start": {
          "line": 9,
          "column": 20
        },
        "end": {
          "line": 9,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 237,
      "end": 240,
      "loc": {
        "start": {
          "line": 10,
          "column": 12
        },
        "end": {
          "line": 10,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "data",
      "start": 241,
      "end": 245,
      "loc": {
        "start": {
          "line": 10,
          "column": 16
        },
        "end": {
          "line": 10,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 246,
      "end": 247,
      "loc": {
        "start": {
          "line": 10,
          "column": 21
        },
        "end": {
          "line": 10,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 248,
      "end": 254,
      "loc": {
        "start": {
          "line": 10,
          "column": 23
        },
        "end": {
          "line": 10,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 254,
      "end": 255,
      "loc": {
        "start": {
          "line": 10,
          "column": 29
        },
        "end": {
          "line": 10,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 255,
      "end": 260,
      "loc": {
        "start": {
          "line": 10,
          "column": 30
        },
        "end": {
          "line": 10,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 260,
      "end": 261,
      "loc": {
        "start": {
          "line": 10,
          "column": 35
        },
        "end": {
          "line": 10,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 261,
      "end": 262,
      "loc": {
        "start": {
          "line": 10,
          "column": 36
        },
        "end": {
          "line": 10,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 262,
      "end": 263,
      "loc": {
        "start": {
          "line": 10,
          "column": 37
        },
        "end": {
          "line": 10,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "len",
      "start": 264,
      "end": 267,
      "loc": {
        "start": {
          "line": 10,
          "column": 39
        },
        "end": {
          "line": 10,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 267,
      "end": 268,
      "loc": {
        "start": {
          "line": 10,
          "column": 42
        },
        "end": {
          "line": 10,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 268,
      "end": 269,
      "loc": {
        "start": {
          "line": 10,
          "column": 43
        },
        "end": {
          "line": 10,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 269,
      "end": 277,
      "loc": {
        "start": {
          "line": 10,
          "column": 44
        },
        "end": {
          "line": 10,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 277,
      "end": 278,
      "loc": {
        "start": {
          "line": 10,
          "column": 52
        },
        "end": {
          "line": 10,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "binary",
      "start": 278,
      "end": 286,
      "loc": {
        "start": {
          "line": 10,
          "column": 53
        },
        "end": {
          "line": 10,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 286,
      "end": 287,
      "loc": {
        "start": {
          "line": 10,
          "column": 61
        },
        "end": {
          "line": 10,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 287,
      "end": 288,
      "loc": {
        "start": {
          "line": 10,
          "column": 62
        },
        "end": {
          "line": 10,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 301,
      "end": 302,
      "loc": {
        "start": {
          "line": 11,
          "column": 12
        },
        "end": {
          "line": 11,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 302,
      "end": 303,
      "loc": {
        "start": {
          "line": 11,
          "column": 13
        },
        "end": {
          "line": 11,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "append",
      "start": 303,
      "end": 309,
      "loc": {
        "start": {
          "line": 11,
          "column": 14
        },
        "end": {
          "line": 11,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 309,
      "end": 310,
      "loc": {
        "start": {
          "line": 11,
          "column": 20
        },
        "end": {
          "line": 11,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "data",
      "start": 310,
      "end": 314,
      "loc": {
        "start": {
          "line": 11,
          "column": 21
        },
        "end": {
          "line": 11,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 314,
      "end": 315,
      "loc": {
        "start": {
          "line": 11,
          "column": 25
        },
        "end": {
          "line": 11,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "binary",
      "start": 316,
      "end": 324,
      "loc": {
        "start": {
          "line": 11,
          "column": 27
        },
        "end": {
          "line": 11,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 324,
      "end": 325,
      "loc": {
        "start": {
          "line": 11,
          "column": 35
        },
        "end": {
          "line": 11,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 325,
      "end": 326,
      "loc": {
        "start": {
          "line": 11,
          "column": 36
        },
        "end": {
          "line": 11,
          "column": 37
        }
      }
    },
    {
      "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": 339,
      "end": 344,
      "loc": {
        "start": {
          "line": 12,
          "column": 12
        },
        "end": {
          "line": 12,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 345,
      "end": 346,
      "loc": {
        "start": {
          "line": 12,
          "column": 18
        },
        "end": {
          "line": 12,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "len",
      "start": 346,
      "end": 349,
      "loc": {
        "start": {
          "line": 12,
          "column": 19
        },
        "end": {
          "line": 12,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "++/--",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": true,
        "binop": null
      },
      "value": "--",
      "start": 349,
      "end": 351,
      "loc": {
        "start": {
          "line": 12,
          "column": 22
        },
        "end": {
          "line": 12,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 352,
      "end": 353,
      "loc": {
        "start": {
          "line": 12,
          "column": 25
        },
        "end": {
          "line": 12,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "data",
      "start": 354,
      "end": 358,
      "loc": {
        "start": {
          "line": 12,
          "column": 27
        },
        "end": {
          "line": 12,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 358,
      "end": 359,
      "loc": {
        "start": {
          "line": 12,
          "column": 31
        },
        "end": {
          "line": 12,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 359,
      "end": 365,
      "loc": {
        "start": {
          "line": 12,
          "column": 32
        },
        "end": {
          "line": 12,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 365,
      "end": 366,
      "loc": {
        "start": {
          "line": 12,
          "column": 38
        },
        "end": {
          "line": 12,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 367,
      "end": 368,
      "loc": {
        "start": {
          "line": 12,
          "column": 40
        },
        "end": {
          "line": 12,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 385,
      "end": 386,
      "loc": {
        "start": {
          "line": 13,
          "column": 16
        },
        "end": {
          "line": 13,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 386,
      "end": 387,
      "loc": {
        "start": {
          "line": 13,
          "column": 17
        },
        "end": {
          "line": 13,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "writeUint8",
      "start": 387,
      "end": 397,
      "loc": {
        "start": {
          "line": 13,
          "column": 18
        },
        "end": {
          "line": 13,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 397,
      "end": 398,
      "loc": {
        "start": {
          "line": 13,
          "column": 28
        },
        "end": {
          "line": 13,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 398,
      "end": 399,
      "loc": {
        "start": {
          "line": 13,
          "column": 29
        },
        "end": {
          "line": 13,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 399,
      "end": 400,
      "loc": {
        "start": {
          "line": 13,
          "column": 30
        },
        "end": {
          "line": 13,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 400,
      "end": 401,
      "loc": {
        "start": {
          "line": 13,
          "column": 31
        },
        "end": {
          "line": 13,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 414,
      "end": 415,
      "loc": {
        "start": {
          "line": 14,
          "column": 12
        },
        "end": {
          "line": 14,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 424,
      "end": 425,
      "loc": {
        "start": {
          "line": 15,
          "column": 8
        },
        "end": {
          "line": 15,
          "column": 9
        }
      }
    },
    {
      "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": 426,
      "end": 430,
      "loc": {
        "start": {
          "line": 15,
          "column": 10
        },
        "end": {
          "line": 15,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 431,
      "end": 432,
      "loc": {
        "start": {
          "line": 15,
          "column": 15
        },
        "end": {
          "line": 15,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 445,
      "end": 448,
      "loc": {
        "start": {
          "line": 16,
          "column": 12
        },
        "end": {
          "line": 16,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b_copy",
      "start": 449,
      "end": 455,
      "loc": {
        "start": {
          "line": 16,
          "column": 16
        },
        "end": {
          "line": 16,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 456,
      "end": 457,
      "loc": {
        "start": {
          "line": 16,
          "column": 23
        },
        "end": {
          "line": 16,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 458,
      "end": 459,
      "loc": {
        "start": {
          "line": 16,
          "column": 25
        },
        "end": {
          "line": 16,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 459,
      "end": 460,
      "loc": {
        "start": {
          "line": 16,
          "column": 26
        },
        "end": {
          "line": 16,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "copy",
      "start": 460,
      "end": 464,
      "loc": {
        "start": {
          "line": 16,
          "column": 27
        },
        "end": {
          "line": 16,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 464,
      "end": 465,
      "loc": {
        "start": {
          "line": 16,
          "column": 31
        },
        "end": {
          "line": 16,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 465,
      "end": 466,
      "loc": {
        "start": {
          "line": 16,
          "column": 32
        },
        "end": {
          "line": 16,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 466,
      "end": 467,
      "loc": {
        "start": {
          "line": 16,
          "column": 33
        },
        "end": {
          "line": 16,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "offset",
      "start": 467,
      "end": 473,
      "loc": {
        "start": {
          "line": 16,
          "column": 34
        },
        "end": {
          "line": 16,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 473,
      "end": 474,
      "loc": {
        "start": {
          "line": 16,
          "column": 40
        },
        "end": {
          "line": 16,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 475,
      "end": 476,
      "loc": {
        "start": {
          "line": 16,
          "column": 42
        },
        "end": {
          "line": 16,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 476,
      "end": 477,
      "loc": {
        "start": {
          "line": 16,
          "column": 43
        },
        "end": {
          "line": 16,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "offset",
      "start": 477,
      "end": 483,
      "loc": {
        "start": {
          "line": 16,
          "column": 44
        },
        "end": {
          "line": 16,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 484,
      "end": 485,
      "loc": {
        "start": {
          "line": 16,
          "column": 51
        },
        "end": {
          "line": 16,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "len",
      "start": 486,
      "end": 489,
      "loc": {
        "start": {
          "line": 16,
          "column": 53
        },
        "end": {
          "line": 16,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 489,
      "end": 490,
      "loc": {
        "start": {
          "line": 16,
          "column": 56
        },
        "end": {
          "line": 16,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 490,
      "end": 491,
      "loc": {
        "start": {
          "line": 16,
          "column": 57
        },
        "end": {
          "line": 16,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 504,
      "end": 505,
      "loc": {
        "start": {
          "line": 17,
          "column": 12
        },
        "end": {
          "line": 17,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 505,
      "end": 506,
      "loc": {
        "start": {
          "line": 17,
          "column": 13
        },
        "end": {
          "line": 17,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "skip",
      "start": 506,
      "end": 510,
      "loc": {
        "start": {
          "line": 17,
          "column": 14
        },
        "end": {
          "line": 17,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 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": "len",
      "start": 511,
      "end": 514,
      "loc": {
        "start": {
          "line": 17,
          "column": 19
        },
        "end": {
          "line": 17,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 514,
      "end": 515,
      "loc": {
        "start": {
          "line": 17,
          "column": 22
        },
        "end": {
          "line": 17,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 515,
      "end": 516,
      "loc": {
        "start": {
          "line": 17,
          "column": 23
        },
        "end": {
          "line": 17,
          "column": 24
        }
      }
    },
    {
      "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": 529,
      "end": 535,
      "loc": {
        "start": {
          "line": 18,
          "column": 12
        },
        "end": {
          "line": 18,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Buffer",
      "start": 536,
      "end": 542,
      "loc": {
        "start": {
          "line": 18,
          "column": 19
        },
        "end": {
          "line": 18,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 542,
      "end": 543,
      "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": "from",
      "start": 543,
      "end": 547,
      "loc": {
        "start": {
          "line": 18,
          "column": 26
        },
        "end": {
          "line": 18,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 547,
      "end": 548,
      "loc": {
        "start": {
          "line": 18,
          "column": 30
        },
        "end": {
          "line": 18,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b_copy",
      "start": 548,
      "end": 554,
      "loc": {
        "start": {
          "line": 18,
          "column": 31
        },
        "end": {
          "line": 18,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 554,
      "end": 555,
      "loc": {
        "start": {
          "line": 18,
          "column": 37
        },
        "end": {
          "line": 18,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toBinary",
      "start": 555,
      "end": 563,
      "loc": {
        "start": {
          "line": 18,
          "column": 38
        },
        "end": {
          "line": 18,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 563,
      "end": 564,
      "loc": {
        "start": {
          "line": 18,
          "column": 46
        },
        "end": {
          "line": 18,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 564,
      "end": 565,
      "loc": {
        "start": {
          "line": 18,
          "column": 47
        },
        "end": {
          "line": 18,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 565,
      "end": 566,
      "loc": {
        "start": {
          "line": 18,
          "column": 48
        },
        "end": {
          "line": 18,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "binary",
      "start": 567,
      "end": 575,
      "loc": {
        "start": {
          "line": 18,
          "column": 50
        },
        "end": {
          "line": 18,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 575,
      "end": 576,
      "loc": {
        "start": {
          "line": 18,
          "column": 58
        },
        "end": {
          "line": 18,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 576,
      "end": 577,
      "loc": {
        "start": {
          "line": 18,
          "column": 59
        },
        "end": {
          "line": 18,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 586,
      "end": 587,
      "loc": {
        "start": {
          "line": 19,
          "column": 8
        },
        "end": {
          "line": 19,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 592,
      "end": 593,
      "loc": {
        "start": {
          "line": 20,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "static",
      "start": 599,
      "end": 605,
      "loc": {
        "start": {
          "line": 22,
          "column": 4
        },
        "end": {
          "line": 22,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "public_key",
      "start": 606,
      "end": 616,
      "loc": {
        "start": {
          "line": 22,
          "column": 11
        },
        "end": {
          "line": 22,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 616,
      "end": 617,
      "loc": {
        "start": {
          "line": 22,
          "column": 21
        },
        "end": {
          "line": 22,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 617,
      "end": 618,
      "loc": {
        "start": {
          "line": 22,
          "column": 22
        },
        "end": {
          "line": 22,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 618,
      "end": 619,
      "loc": {
        "start": {
          "line": 22,
          "column": 23
        },
        "end": {
          "line": 22,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "public_key",
      "start": 620,
      "end": 630,
      "loc": {
        "start": {
          "line": 22,
          "column": 25
        },
        "end": {
          "line": 22,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 630,
      "end": 631,
      "loc": {
        "start": {
          "line": 22,
          "column": 35
        },
        "end": {
          "line": 22,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 632,
      "end": 633,
      "loc": {
        "start": {
          "line": 22,
          "column": 37
        },
        "end": {
          "line": 22,
          "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": 642,
      "end": 644,
      "loc": {
        "start": {
          "line": 23,
          "column": 8
        },
        "end": {
          "line": 23,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 645,
      "end": 646,
      "loc": {
        "start": {
          "line": 23,
          "column": 11
        },
        "end": {
          "line": 23,
          "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": 646,
      "end": 647,
      "loc": {
        "start": {
          "line": 23,
          "column": 12
        },
        "end": {
          "line": 23,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 647,
      "end": 648,
      "loc": {
        "start": {
          "line": 23,
          "column": 13
        },
        "end": {
          "line": 23,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 648,
      "end": 649,
      "loc": {
        "start": {
          "line": 23,
          "column": 14
        },
        "end": {
          "line": 23,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 650,
      "end": 651,
      "loc": {
        "start": {
          "line": 23,
          "column": 16
        },
        "end": {
          "line": 23,
          "column": 17
        }
      }
    },
    {
      "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": 664,
      "end": 670,
      "loc": {
        "start": {
          "line": 24,
          "column": 12
        },
        "end": {
          "line": 24,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 670,
      "end": 671,
      "loc": {
        "start": {
          "line": 24,
          "column": 18
        },
        "end": {
          "line": 24,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 680,
      "end": 681,
      "loc": {
        "start": {
          "line": 25,
          "column": 8
        },
        "end": {
          "line": 25,
          "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": 690,
      "end": 692,
      "loc": {
        "start": {
          "line": 26,
          "column": 8
        },
        "end": {
          "line": 26,
          "column": 10
        }
      }
    },
    {
      "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": 26,
          "column": 11
        },
        "end": {
          "line": 26,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "public_key",
      "start": 694,
      "end": 704,
      "loc": {
        "start": {
          "line": 26,
          "column": 12
        },
        "end": {
          "line": 26,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 704,
      "end": 705,
      "loc": {
        "start": {
          "line": 26,
          "column": 22
        },
        "end": {
          "line": 26,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 706,
      "end": 707,
      "loc": {
        "start": {
          "line": 26,
          "column": 24
        },
        "end": {
          "line": 26,
          "column": 25
        }
      }
    },
    {
      "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": 720,
      "end": 723,
      "loc": {
        "start": {
          "line": 27,
          "column": 12
        },
        "end": {
          "line": 27,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 724,
      "end": 730,
      "loc": {
        "start": {
          "line": 27,
          "column": 16
        },
        "end": {
          "line": 27,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 731,
      "end": 732,
      "loc": {
        "start": {
          "line": 27,
          "column": 23
        },
        "end": {
          "line": 27,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "public_key",
      "start": 733,
      "end": 743,
      "loc": {
        "start": {
          "line": 27,
          "column": 25
        },
        "end": {
          "line": 27,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 743,
      "end": 744,
      "loc": {
        "start": {
          "line": 27,
          "column": 35
        },
        "end": {
          "line": 27,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toBuffer",
      "start": 744,
      "end": 752,
      "loc": {
        "start": {
          "line": 27,
          "column": 36
        },
        "end": {
          "line": 27,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 752,
      "end": 753,
      "loc": {
        "start": {
          "line": 27,
          "column": 44
        },
        "end": {
          "line": 27,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 753,
      "end": 754,
      "loc": {
        "start": {
          "line": 27,
          "column": 45
        },
        "end": {
          "line": 27,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 754,
      "end": 755,
      "loc": {
        "start": {
          "line": 27,
          "column": 46
        },
        "end": {
          "line": 27,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 768,
      "end": 769,
      "loc": {
        "start": {
          "line": 28,
          "column": 12
        },
        "end": {
          "line": 28,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 769,
      "end": 770,
      "loc": {
        "start": {
          "line": 28,
          "column": 13
        },
        "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": "append",
      "start": 770,
      "end": 776,
      "loc": {
        "start": {
          "line": 28,
          "column": 14
        },
        "end": {
          "line": 28,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 776,
      "end": 777,
      "loc": {
        "start": {
          "line": 28,
          "column": 20
        },
        "end": {
          "line": 28,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 777,
      "end": 783,
      "loc": {
        "start": {
          "line": 28,
          "column": 21
        },
        "end": {
          "line": 28,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 783,
      "end": 784,
      "loc": {
        "start": {
          "line": 28,
          "column": 27
        },
        "end": {
          "line": 28,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 784,
      "end": 792,
      "loc": {
        "start": {
          "line": 28,
          "column": 28
        },
        "end": {
          "line": 28,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 792,
      "end": 793,
      "loc": {
        "start": {
          "line": 28,
          "column": 36
        },
        "end": {
          "line": 28,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "binary",
      "start": 793,
      "end": 801,
      "loc": {
        "start": {
          "line": 28,
          "column": 37
        },
        "end": {
          "line": 28,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 801,
      "end": 802,
      "loc": {
        "start": {
          "line": 28,
          "column": 45
        },
        "end": {
          "line": 28,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 802,
      "end": 803,
      "loc": {
        "start": {
          "line": 28,
          "column": 46
        },
        "end": {
          "line": 28,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "binary",
      "start": 804,
      "end": 812,
      "loc": {
        "start": {
          "line": 28,
          "column": 48
        },
        "end": {
          "line": 28,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 812,
      "end": 813,
      "loc": {
        "start": {
          "line": 28,
          "column": 56
        },
        "end": {
          "line": 28,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 813,
      "end": 814,
      "loc": {
        "start": {
          "line": 28,
          "column": 57
        },
        "end": {
          "line": 28,
          "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": 827,
      "end": 833,
      "loc": {
        "start": {
          "line": 29,
          "column": 12
        },
        "end": {
          "line": 29,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 833,
      "end": 834,
      "loc": {
        "start": {
          "line": 29,
          "column": 18
        },
        "end": {
          "line": 29,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 843,
      "end": 844,
      "loc": {
        "start": {
          "line": 30,
          "column": 8
        },
        "end": {
          "line": 30,
          "column": 9
        }
      }
    },
    {
      "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": 845,
      "end": 849,
      "loc": {
        "start": {
          "line": 30,
          "column": 10
        },
        "end": {
          "line": 30,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 850,
      "end": 851,
      "loc": {
        "start": {
          "line": 30,
          "column": 15
        },
        "end": {
          "line": 30,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 864,
      "end": 870,
      "loc": {
        "start": {
          "line": 31,
          "column": 12
        },
        "end": {
          "line": 31,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 871,
      "end": 872,
      "loc": {
        "start": {
          "line": 31,
          "column": 19
        },
        "end": {
          "line": 31,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "FastParser",
      "start": 873,
      "end": 883,
      "loc": {
        "start": {
          "line": 31,
          "column": 21
        },
        "end": {
          "line": 31,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 883,
      "end": 884,
      "loc": {
        "start": {
          "line": 31,
          "column": 31
        },
        "end": {
          "line": 31,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fixed_data",
      "start": 884,
      "end": 894,
      "loc": {
        "start": {
          "line": 31,
          "column": 32
        },
        "end": {
          "line": 31,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 894,
      "end": 895,
      "loc": {
        "start": {
          "line": 31,
          "column": 42
        },
        "end": {
          "line": 31,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 895,
      "end": 896,
      "loc": {
        "start": {
          "line": 31,
          "column": 43
        },
        "end": {
          "line": 31,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 896,
      "end": 897,
      "loc": {
        "start": {
          "line": 31,
          "column": 44
        },
        "end": {
          "line": 31,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 33,
      "start": 898,
      "end": 900,
      "loc": {
        "start": {
          "line": 31,
          "column": 46
        },
        "end": {
          "line": 31,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 900,
      "end": 901,
      "loc": {
        "start": {
          "line": 31,
          "column": 48
        },
        "end": {
          "line": 31,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 901,
      "end": 902,
      "loc": {
        "start": {
          "line": 31,
          "column": 49
        },
        "end": {
          "line": 31,
          "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": 915,
      "end": 921,
      "loc": {
        "start": {
          "line": 32,
          "column": 12
        },
        "end": {
          "line": 32,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "PublicKey",
      "start": 922,
      "end": 931,
      "loc": {
        "start": {
          "line": 32,
          "column": 19
        },
        "end": {
          "line": 32,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 931,
      "end": 932,
      "loc": {
        "start": {
          "line": 32,
          "column": 28
        },
        "end": {
          "line": 32,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fromBuffer",
      "start": 932,
      "end": 942,
      "loc": {
        "start": {
          "line": 32,
          "column": 29
        },
        "end": {
          "line": 32,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 942,
      "end": 943,
      "loc": {
        "start": {
          "line": 32,
          "column": 39
        },
        "end": {
          "line": 32,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buffer",
      "start": 943,
      "end": 949,
      "loc": {
        "start": {
          "line": 32,
          "column": 40
        },
        "end": {
          "line": 32,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 949,
      "end": 950,
      "loc": {
        "start": {
          "line": 32,
          "column": 46
        },
        "end": {
          "line": 32,
          "column": 47
        }
      }
    },
    {
      "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": 32,
          "column": 47
        },
        "end": {
          "line": 32,
          "column": 48
        }
      }
    },
    {
      "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": 33,
          "column": 8
        },
        "end": {
          "line": 33,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 966,
      "end": 967,
      "loc": {
        "start": {
          "line": 34,
          "column": 4
        },
        "end": {
          "line": 34,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "static",
      "start": 973,
      "end": 979,
      "loc": {
        "start": {
          "line": 36,
          "column": 4
        },
        "end": {
          "line": 36,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ripemd160",
      "start": 980,
      "end": 989,
      "loc": {
        "start": {
          "line": 36,
          "column": 11
        },
        "end": {
          "line": 36,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 989,
      "end": 990,
      "loc": {
        "start": {
          "line": 36,
          "column": 20
        },
        "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": "b",
      "start": 990,
      "end": 991,
      "loc": {
        "start": {
          "line": 36,
          "column": 21
        },
        "end": {
          "line": 36,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 991,
      "end": 992,
      "loc": {
        "start": {
          "line": 36,
          "column": 22
        },
        "end": {
          "line": 36,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ripemd160",
      "start": 993,
      "end": 1002,
      "loc": {
        "start": {
          "line": 36,
          "column": 24
        },
        "end": {
          "line": 36,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1002,
      "end": 1003,
      "loc": {
        "start": {
          "line": 36,
          "column": 33
        },
        "end": {
          "line": 36,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1004,
      "end": 1005,
      "loc": {
        "start": {
          "line": 36,
          "column": 35
        },
        "end": {
          "line": 36,
          "column": 36
        }
      }
    },
    {
      "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": 1014,
      "end": 1016,
      "loc": {
        "start": {
          "line": 37,
          "column": 8
        },
        "end": {
          "line": 37,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1017,
      "end": 1018,
      "loc": {
        "start": {
          "line": 37,
          "column": 11
        },
        "end": {
          "line": 37,
          "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": 1018,
      "end": 1019,
      "loc": {
        "start": {
          "line": 37,
          "column": 12
        },
        "end": {
          "line": 37,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1019,
      "end": 1020,
      "loc": {
        "start": {
          "line": 37,
          "column": 13
        },
        "end": {
          "line": 37,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1020,
      "end": 1021,
      "loc": {
        "start": {
          "line": 37,
          "column": 14
        },
        "end": {
          "line": 37,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1022,
      "end": 1023,
      "loc": {
        "start": {
          "line": 37,
          "column": 16
        },
        "end": {
          "line": 37,
          "column": 17
        }
      }
    },
    {
      "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": 1036,
      "end": 1042,
      "loc": {
        "start": {
          "line": 38,
          "column": 12
        },
        "end": {
          "line": 38,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1042,
      "end": 1043,
      "loc": {
        "start": {
          "line": 38,
          "column": 18
        },
        "end": {
          "line": 38,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1052,
      "end": 1053,
      "loc": {
        "start": {
          "line": 39,
          "column": 8
        },
        "end": {
          "line": 39,
          "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": 1062,
      "end": 1064,
      "loc": {
        "start": {
          "line": 40,
          "column": 8
        },
        "end": {
          "line": 40,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1065,
      "end": 1066,
      "loc": {
        "start": {
          "line": 40,
          "column": 11
        },
        "end": {
          "line": 40,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ripemd160",
      "start": 1066,
      "end": 1075,
      "loc": {
        "start": {
          "line": 40,
          "column": 12
        },
        "end": {
          "line": 40,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1075,
      "end": 1076,
      "loc": {
        "start": {
          "line": 40,
          "column": 21
        },
        "end": {
          "line": 40,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1077,
      "end": 1078,
      "loc": {
        "start": {
          "line": 40,
          "column": 23
        },
        "end": {
          "line": 40,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "FastParser",
      "start": 1091,
      "end": 1101,
      "loc": {
        "start": {
          "line": 41,
          "column": 12
        },
        "end": {
          "line": 41,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1101,
      "end": 1102,
      "loc": {
        "start": {
          "line": 41,
          "column": 22
        },
        "end": {
          "line": 41,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fixed_data",
      "start": 1102,
      "end": 1112,
      "loc": {
        "start": {
          "line": 41,
          "column": 23
        },
        "end": {
          "line": 41,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1112,
      "end": 1113,
      "loc": {
        "start": {
          "line": 41,
          "column": 33
        },
        "end": {
          "line": 41,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1113,
      "end": 1114,
      "loc": {
        "start": {
          "line": 41,
          "column": 34
        },
        "end": {
          "line": 41,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1114,
      "end": 1115,
      "loc": {
        "start": {
          "line": 41,
          "column": 35
        },
        "end": {
          "line": 41,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 20,
      "start": 1116,
      "end": 1118,
      "loc": {
        "start": {
          "line": 41,
          "column": 37
        },
        "end": {
          "line": 41,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1118,
      "end": 1119,
      "loc": {
        "start": {
          "line": 41,
          "column": 39
        },
        "end": {
          "line": 41,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ripemd160",
      "start": 1120,
      "end": 1129,
      "loc": {
        "start": {
          "line": 41,
          "column": 41
        },
        "end": {
          "line": 41,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1129,
      "end": 1130,
      "loc": {
        "start": {
          "line": 41,
          "column": 50
        },
        "end": {
          "line": 41,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1130,
      "end": 1131,
      "loc": {
        "start": {
          "line": 41,
          "column": 51
        },
        "end": {
          "line": 41,
          "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": 1144,
      "end": 1150,
      "loc": {
        "start": {
          "line": 42,
          "column": 12
        },
        "end": {
          "line": 42,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1150,
      "end": 1151,
      "loc": {
        "start": {
          "line": 42,
          "column": 18
        },
        "end": {
          "line": 42,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1160,
      "end": 1161,
      "loc": {
        "start": {
          "line": 43,
          "column": 8
        },
        "end": {
          "line": 43,
          "column": 9
        }
      }
    },
    {
      "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": 1162,
      "end": 1166,
      "loc": {
        "start": {
          "line": 43,
          "column": 10
        },
        "end": {
          "line": 43,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1167,
      "end": 1168,
      "loc": {
        "start": {
          "line": 43,
          "column": 15
        },
        "end": {
          "line": 43,
          "column": 16
        }
      }
    },
    {
      "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": 1181,
      "end": 1187,
      "loc": {
        "start": {
          "line": 44,
          "column": 12
        },
        "end": {
          "line": 44,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "FastParser",
      "start": 1188,
      "end": 1198,
      "loc": {
        "start": {
          "line": 44,
          "column": 19
        },
        "end": {
          "line": 44,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1198,
      "end": 1199,
      "loc": {
        "start": {
          "line": 44,
          "column": 29
        },
        "end": {
          "line": 44,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fixed_data",
      "start": 1199,
      "end": 1209,
      "loc": {
        "start": {
          "line": 44,
          "column": 30
        },
        "end": {
          "line": 44,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1209,
      "end": 1210,
      "loc": {
        "start": {
          "line": 44,
          "column": 40
        },
        "end": {
          "line": 44,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1210,
      "end": 1211,
      "loc": {
        "start": {
          "line": 44,
          "column": 41
        },
        "end": {
          "line": 44,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1211,
      "end": 1212,
      "loc": {
        "start": {
          "line": 44,
          "column": 42
        },
        "end": {
          "line": 44,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 20,
      "start": 1213,
      "end": 1215,
      "loc": {
        "start": {
          "line": 44,
          "column": 44
        },
        "end": {
          "line": 44,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1215,
      "end": 1216,
      "loc": {
        "start": {
          "line": 44,
          "column": 46
        },
        "end": {
          "line": 44,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1216,
      "end": 1217,
      "loc": {
        "start": {
          "line": 44,
          "column": 47
        },
        "end": {
          "line": 44,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1226,
      "end": 1227,
      "loc": {
        "start": {
          "line": 45,
          "column": 8
        },
        "end": {
          "line": 45,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1232,
      "end": 1233,
      "loc": {
        "start": {
          "line": 46,
          "column": 4
        },
        "end": {
          "line": 46,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "static",
      "start": 1239,
      "end": 1245,
      "loc": {
        "start": {
          "line": 48,
          "column": 4
        },
        "end": {
          "line": 48,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "time_point_sec",
      "start": 1246,
      "end": 1260,
      "loc": {
        "start": {
          "line": 48,
          "column": 11
        },
        "end": {
          "line": 48,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1260,
      "end": 1261,
      "loc": {
        "start": {
          "line": 48,
          "column": 25
        },
        "end": {
          "line": 48,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1261,
      "end": 1262,
      "loc": {
        "start": {
          "line": 48,
          "column": 26
        },
        "end": {
          "line": 48,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1262,
      "end": 1263,
      "loc": {
        "start": {
          "line": 48,
          "column": 27
        },
        "end": {
          "line": 48,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1264,
      "end": 1269,
      "loc": {
        "start": {
          "line": 48,
          "column": 29
        },
        "end": {
          "line": 48,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1269,
      "end": 1270,
      "loc": {
        "start": {
          "line": 48,
          "column": 34
        },
        "end": {
          "line": 48,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1271,
      "end": 1272,
      "loc": {
        "start": {
          "line": 48,
          "column": 36
        },
        "end": {
          "line": 48,
          "column": 37
        }
      }
    },
    {
      "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": 1281,
      "end": 1283,
      "loc": {
        "start": {
          "line": 49,
          "column": 8
        },
        "end": {
          "line": 49,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1284,
      "end": 1285,
      "loc": {
        "start": {
          "line": 49,
          "column": 11
        },
        "end": {
          "line": 49,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1285,
      "end": 1290,
      "loc": {
        "start": {
          "line": 49,
          "column": 12
        },
        "end": {
          "line": 49,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1290,
      "end": 1291,
      "loc": {
        "start": {
          "line": 49,
          "column": 17
        },
        "end": {
          "line": 49,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1292,
      "end": 1293,
      "loc": {
        "start": {
          "line": 49,
          "column": 19
        },
        "end": {
          "line": 49,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1306,
      "end": 1311,
      "loc": {
        "start": {
          "line": 50,
          "column": 12
        },
        "end": {
          "line": 50,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1312,
      "end": 1313,
      "loc": {
        "start": {
          "line": 50,
          "column": 18
        },
        "end": {
          "line": 50,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Math",
      "start": 1314,
      "end": 1318,
      "loc": {
        "start": {
          "line": 50,
          "column": 20
        },
        "end": {
          "line": 50,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1318,
      "end": 1319,
      "loc": {
        "start": {
          "line": 50,
          "column": 24
        },
        "end": {
          "line": 50,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ceil",
      "start": 1319,
      "end": 1323,
      "loc": {
        "start": {
          "line": 50,
          "column": 25
        },
        "end": {
          "line": 50,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1323,
      "end": 1324,
      "loc": {
        "start": {
          "line": 50,
          "column": 29
        },
        "end": {
          "line": 50,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1324,
      "end": 1329,
      "loc": {
        "start": {
          "line": 50,
          "column": 30
        },
        "end": {
          "line": 50,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "/",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 10,
        "updateContext": null
      },
      "value": "/",
      "start": 1330,
      "end": 1331,
      "loc": {
        "start": {
          "line": 50,
          "column": 36
        },
        "end": {
          "line": 50,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1000,
      "start": 1332,
      "end": 1336,
      "loc": {
        "start": {
          "line": 50,
          "column": 38
        },
        "end": {
          "line": 50,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1336,
      "end": 1337,
      "loc": {
        "start": {
          "line": 50,
          "column": 42
        },
        "end": {
          "line": 50,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1337,
      "end": 1338,
      "loc": {
        "start": {
          "line": 50,
          "column": 43
        },
        "end": {
          "line": 50,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1351,
      "end": 1352,
      "loc": {
        "start": {
          "line": 51,
          "column": 12
        },
        "end": {
          "line": 51,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1352,
      "end": 1353,
      "loc": {
        "start": {
          "line": 51,
          "column": 13
        },
        "end": {
          "line": 51,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "writeInt32",
      "start": 1353,
      "end": 1363,
      "loc": {
        "start": {
          "line": 51,
          "column": 14
        },
        "end": {
          "line": 51,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1363,
      "end": 1364,
      "loc": {
        "start": {
          "line": 51,
          "column": 24
        },
        "end": {
          "line": 51,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1364,
      "end": 1369,
      "loc": {
        "start": {
          "line": 51,
          "column": 25
        },
        "end": {
          "line": 51,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1369,
      "end": 1370,
      "loc": {
        "start": {
          "line": 51,
          "column": 30
        },
        "end": {
          "line": 51,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1370,
      "end": 1371,
      "loc": {
        "start": {
          "line": 51,
          "column": 31
        },
        "end": {
          "line": 51,
          "column": 32
        }
      }
    },
    {
      "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": 1384,
      "end": 1390,
      "loc": {
        "start": {
          "line": 52,
          "column": 12
        },
        "end": {
          "line": 52,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1390,
      "end": 1391,
      "loc": {
        "start": {
          "line": 52,
          "column": 18
        },
        "end": {
          "line": 52,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1400,
      "end": 1401,
      "loc": {
        "start": {
          "line": 53,
          "column": 8
        },
        "end": {
          "line": 53,
          "column": 9
        }
      }
    },
    {
      "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": 1402,
      "end": 1406,
      "loc": {
        "start": {
          "line": 53,
          "column": 10
        },
        "end": {
          "line": 53,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1407,
      "end": 1408,
      "loc": {
        "start": {
          "line": 53,
          "column": 15
        },
        "end": {
          "line": 53,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1421,
      "end": 1426,
      "loc": {
        "start": {
          "line": 54,
          "column": 12
        },
        "end": {
          "line": 54,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1427,
      "end": 1428,
      "loc": {
        "start": {
          "line": 54,
          "column": 18
        },
        "end": {
          "line": 54,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "b",
      "start": 1429,
      "end": 1430,
      "loc": {
        "start": {
          "line": 54,
          "column": 20
        },
        "end": {
          "line": 54,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1430,
      "end": 1431,
      "loc": {
        "start": {
          "line": 54,
          "column": 21
        },
        "end": {
          "line": 54,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "readInt32",
      "start": 1431,
      "end": 1440,
      "loc": {
        "start": {
          "line": 54,
          "column": 22
        },
        "end": {
          "line": 54,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1440,
      "end": 1441,
      "loc": {
        "start": {
          "line": 54,
          "column": 31
        },
        "end": {
          "line": 54,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1441,
      "end": 1442,
      "loc": {
        "start": {
          "line": 54,
          "column": 32
        },
        "end": {
          "line": 54,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1442,
      "end": 1443,
      "loc": {
        "start": {
          "line": 54,
          "column": 33
        },
        "end": {
          "line": 54,
          "column": 34
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " fc::time_point_sec",
      "start": 1444,
      "end": 1465,
      "loc": {
        "start": {
          "line": 54,
          "column": 35
        },
        "end": {
          "line": 54,
          "column": 56
        }
      }
    },
    {
      "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": 1478,
      "end": 1484,
      "loc": {
        "start": {
          "line": 55,
          "column": 12
        },
        "end": {
          "line": 55,
          "column": 18
        }
      }
    },
    {
      "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": 1485,
      "end": 1488,
      "loc": {
        "start": {
          "line": 55,
          "column": 19
        },
        "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": "Date",
      "start": 1489,
      "end": 1493,
      "loc": {
        "start": {
          "line": 55,
          "column": 23
        },
        "end": {
          "line": 55,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1493,
      "end": 1494,
      "loc": {
        "start": {
          "line": 55,
          "column": 27
        },
        "end": {
          "line": 55,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "epoch",
      "start": 1494,
      "end": 1499,
      "loc": {
        "start": {
          "line": 55,
          "column": 28
        },
        "end": {
          "line": 55,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "*",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 10,
        "updateContext": null
      },
      "value": "*",
      "start": 1500,
      "end": 1501,
      "loc": {
        "start": {
          "line": 55,
          "column": 34
        },
        "end": {
          "line": 55,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1000,
      "start": 1502,
      "end": 1506,
      "loc": {
        "start": {
          "line": 55,
          "column": 36
        },
        "end": {
          "line": 55,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1506,
      "end": 1507,
      "loc": {
        "start": {
          "line": 55,
          "column": 40
        },
        "end": {
          "line": 55,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1507,
      "end": 1508,
      "loc": {
        "start": {
          "line": 55,
          "column": 41
        },
        "end": {
          "line": 55,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1517,
      "end": 1518,
      "loc": {
        "start": {
          "line": 56,
          "column": 8
        },
        "end": {
          "line": 56,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1523,
      "end": 1524,
      "loc": {
        "start": {
          "line": 57,
          "column": 4
        },
        "end": {
          "line": 57,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1525,
      "end": 1526,
      "loc": {
        "start": {
          "line": 58,
          "column": 0
        },
        "end": {
          "line": 58,
          "column": 1
        }
      }
    },
    {
      "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": 1528,
      "end": 1534,
      "loc": {
        "start": {
          "line": 60,
          "column": 0
        },
        "end": {
          "line": 60,
          "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": 1535,
      "end": 1542,
      "loc": {
        "start": {
          "line": 60,
          "column": 7
        },
        "end": {
          "line": 60,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "FastParser",
      "start": 1543,
      "end": 1553,
      "loc": {
        "start": {
          "line": 60,
          "column": 15
        },
        "end": {
          "line": 60,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1553,
      "end": 1554,
      "loc": {
        "start": {
          "line": 60,
          "column": 25
        },
        "end": {
          "line": 60,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1555,
      "end": 1555,
      "loc": {
        "start": {
          "line": 61,
          "column": 0
        },
        "end": {
          "line": 61,
          "column": 0
        }
      }
    }
  ]
}