From da07d8bbbede4175cc45ca46d883210c1082e295 Mon Sep 17 00:00:00 2001 From: dcodeIO Date: Wed, 14 Dec 2016 13:30:57 +0100 Subject: [PATCH] Added protobuf.roots to minimal runtime, see #554 --- dist/protobuf.js | 2 +- dist/protobuf.min.js | 2 +- dist/protobuf.min.js.gz | Bin 18142 -> 18142 bytes dist/runtime/protobuf.js | 14 ++++++-------- dist/runtime/protobuf.js.map | 2 +- dist/runtime/protobuf.min.js | 4 ++-- dist/runtime/protobuf.min.js.gz | Bin 5506 -> 5515 bytes dist/runtime/protobuf.min.js.map | 2 +- runtime/index.js | 12 +++++------- 9 files changed, 17 insertions(+), 21 deletions(-) diff --git a/dist/protobuf.js b/dist/protobuf.js index 5ec57e13a..847f342cf 100644 --- a/dist/protobuf.js +++ b/dist/protobuf.js @@ -1,6 +1,6 @@ /*! * protobuf.js v6.1.1 (c) 2016 Daniel Wirtz - * Compiled Wed, 14 Dec 2016 12:23:48 UTC + * Compiled Wed, 14 Dec 2016 12:30:31 UTC * Licensed under the Apache License, Version 2.0 * see: https://github.com/dcodeIO/protobuf.js for details */ diff --git a/dist/protobuf.min.js b/dist/protobuf.min.js index 6d5b94df0..05aa2e56d 100644 --- a/dist/protobuf.min.js +++ b/dist/protobuf.min.js @@ -1,6 +1,6 @@ /*! * protobuf.js v6.1.1 (c) 2016 Daniel Wirtz - * Compiled Wed, 14 Dec 2016 12:23:48 UTC + * Compiled Wed, 14 Dec 2016 12:30:31 UTC * Licensed under the Apache License, Version 2.0 * see: https://github.com/dcodeIO/protobuf.js for details */ diff --git a/dist/protobuf.min.js.gz b/dist/protobuf.min.js.gz index 2a942344e39f1b6536a628cdede2448ca9d582c4..57df2e5af9e27ece07642da87337c7975aca3c87 100644 GIT binary patch literal 18142 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 1,\r\n nBits = -7,\r\n i = isBE ? 0 : (nBytes - 1),\r\n d = isBE ? 1 : -1,\r\n s = buffer[offset + i];\r\n\r\n i += d;\r\n\r\n e = s & ((1 << (-nBits)) - 1);\r\n s >>= (-nBits);\r\n nBits += eLen;\r\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n m = e & ((1 << (-nBits)) - 1);\r\n e >>= (-nBits);\r\n nBits += mLen;\r\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n if (e === 0) {\r\n e = 1 - eBias;\r\n } else if (e === eMax) {\r\n return m ? NaN : ((s ? -1 : 1) * Infinity);\r\n } else {\r\n m = m + Math.pow(2, mLen);\r\n e = e - eBias;\r\n }\r\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\r\n};\r\n\r\nexports.write = function writeIEEE754(buffer, value, offset, isBE, mLen, nBytes) {\r\n var e, m, c,\r\n eLen = nBytes * 8 - mLen - 1,\r\n eMax = (1 << eLen) - 1,\r\n eBias = eMax >> 1,\r\n rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0),\r\n i = isBE ? (nBytes - 1) : 0,\r\n d = isBE ? -1 : 1,\r\n s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\r\n\r\n value = Math.abs(value);\r\n\r\n if (isNaN(value) || value === Infinity) {\r\n m = isNaN(value) ? 1 : 0;\r\n e = eMax;\r\n } else {\r\n e = Math.floor(Math.log(value) / Math.LN2);\r\n if (value * (c = Math.pow(2, -e)) < 1) {\r\n e--;\r\n c *= 2;\r\n }\r\n if (e + eBias >= 1) {\r\n value += rt / c;\r\n } else {\r\n value += rt * Math.pow(2, 1 - eBias);\r\n }\r\n if (value * c >= 2) {\r\n e++;\r\n c /= 2;\r\n }\r\n\r\n if (e + eBias >= eMax) {\r\n m = 0;\r\n e = eMax;\r\n } else if (e + eBias >= 1) {\r\n m = (value * c - 1) * Math.pow(2, mLen);\r\n e = e + eBias;\r\n } else {\r\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\r\n e = 0;\r\n }\r\n }\r\n\r\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8);\r\n\r\n e = (e << mLen) | m;\r\n eLen += mLen;\r\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8);\r\n\r\n buffer[offset + i - d] |= s * 128;\r\n};\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal base64 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar base64 = exports;\r\n\r\n/**\r\n * Calculates the byte length of a base64 encoded string.\r\n * @param {string} string Base64 encoded string\r\n * @returns {number} Byte length\r\n */\r\nbase64.length = function length(string) {\r\n var p = string.length;\r\n if (!p)\r\n return 0;\r\n var n = 0;\r\n while (--p % 4 > 1 && string.charAt(p) === '=')\r\n ++n;\r\n return Math.ceil(string.length * 3) / 4 - n;\r\n};\r\n\r\n// Base64 encoding table\r\nvar b64 = [];\r\n\r\n// Base64 decoding table\r\nvar s64 = [];\r\n\r\n// 65..90, 97..122, 48..57, 43, 47\r\nfor (var i = 0; i < 64;)\r\n s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++;\r\n\r\n/**\r\n * Encodes a buffer to a base64 encoded string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} Base64 encoded string\r\n */\r\nbase64.encode = function encode(buffer, start, end) {\r\n var string = []; // alt: new Array(Math.ceil((end - start) / 3) * 4);\r\n var i = 0, // output index\r\n j = 0, // goto index\r\n t; // temporary\r\n while (start < end) {\r\n var b = buffer[start++];\r\n switch (j) {\r\n case 0:\r\n string[i++] = b64[b >> 2];\r\n t = (b & 3) << 4;\r\n j = 1;\r\n break;\r\n case 1:\r\n string[i++] = b64[t | b >> 4];\r\n t = (b & 15) << 2;\r\n j = 2;\r\n break;\r\n case 2:\r\n string[i++] = b64[t | b >> 6];\r\n string[i++] = b64[b & 63];\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j) {\r\n string[i++] = b64[t];\r\n string[i ] = 61;\r\n if (j === 1)\r\n string[i + 1] = 61;\r\n }\r\n return String.fromCharCode.apply(String, string);\r\n};\r\n\r\nvar invalidEncoding = \"invalid encoding\";\r\n\r\n/**\r\n * Decodes a base64 encoded string to a buffer.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Number of bytes written\r\n * @throws {Error} If encoding is invalid\r\n */\r\nbase64.decode = function decode(string, buffer, offset) {\r\n var start = offset;\r\n var j = 0, // goto index\r\n t; // temporary\r\n for (var i = 0; i < string.length;) {\r\n var c = string.charCodeAt(i++);\r\n if (c === 61 && j > 1)\r\n break;\r\n if ((c = s64[c]) === undefined)\r\n throw Error(invalidEncoding);\r\n switch (j) {\r\n case 0:\r\n t = c;\r\n j = 1;\r\n break;\r\n case 1:\r\n buffer[offset++] = t << 2 | (c & 48) >> 4;\r\n t = c;\r\n j = 2;\r\n break;\r\n case 2:\r\n buffer[offset++] = (t & 15) << 4 | (c & 60) >> 2;\r\n t = c;\r\n j = 3;\r\n break;\r\n case 3:\r\n buffer[offset++] = (t & 3) << 6 | c;\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j === 1)\r\n throw Error(invalidEncoding);\r\n return offset - start;\r\n};\r\n","\"use strict\";\r\nmodule.exports = pool;\r\n\r\n/**\r\n * An allocator as used by {@link util.pool}.\r\n * @typedef PoolAllocator\r\n * @type {function}\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\n\r\n/**\r\n * A slicer as used by {@link util.pool}.\r\n * @typedef PoolSlicer\r\n * @type {function}\r\n * @param {number} start Start offset\r\n * @param {number} end End offset\r\n * @returns {Uint8Array} Buffer slice\r\n * @this {Uint8Array}\r\n */\r\n\r\n/**\r\n * A general purpose buffer pool.\r\n * @memberof util\r\n * @function\r\n * @param {PoolAllocator} alloc Allocator\r\n * @param {PoolSlicer} slice Slicer\r\n * @param {number} [size=8192] Slab size\r\n * @returns {PoolAllocator} Pooled allocator\r\n */\r\nfunction pool(alloc, slice, size) {\r\n var SIZE = size || 8192;\r\n var MAX = SIZE >>> 1;\r\n var slab = null;\r\n var offset = SIZE;\r\n return function pool_alloc(size) {\r\n if (size > MAX)\r\n return alloc(size);\r\n if (offset + size > SIZE) {\r\n slab = alloc(SIZE);\r\n offset = 0;\r\n }\r\n var buf = slice.call(slab, offset, offset += size);\r\n if (offset & 7) // align to 32 bit\r\n offset = (offset | 7) + 1;\r\n return buf;\r\n };\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal UTF8 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar utf8 = exports;\r\n\r\n/**\r\n * Calculates the UTF8 byte length of a string.\r\n * @param {string} string String\r\n * @returns {number} Byte length\r\n */\r\nutf8.length = function length(string) {\r\n var len = 0,\r\n c = 0;\r\n for (var i = 0; i < string.length; ++i) {\r\n c = string.charCodeAt(i);\r\n if (c < 128)\r\n len += 1;\r\n else if (c < 2048)\r\n len += 2;\r\n else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {\r\n ++i;\r\n len += 4;\r\n } else\r\n len += 3;\r\n }\r\n return len;\r\n};\r\n\r\n/**\r\n * Reads UTF8 bytes as a string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} String read\r\n */\r\nutf8.read = function(buffer, start, end) {\r\n var len = end - start;\r\n if (len < 1)\r\n return \"\";\r\n var string = [],\r\n i = 0, // char offset\r\n t; // temporary\r\n while (start < end) {\r\n t = buffer[start++];\r\n if (t < 128)\r\n string[i++] = t;\r\n else if (t > 191 && t < 224)\r\n string[i++] = (t & 31) << 6 | buffer[start++] & 63;\r\n else if (t > 239 && t < 365) {\r\n t = ((t & 7) << 18 | (buffer[start++] & 63) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63) - 0x10000;\r\n string[i++] = 0xD800 + (t >> 10);\r\n string[i++] = 0xDC00 + (t & 1023);\r\n } else\r\n string[i++] = (t & 15) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63;\r\n }\r\n return String.fromCharCode.apply(String, string.slice(0, i));\r\n};\r\n\r\n/**\r\n * Writes a string as UTF8 bytes.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Bytes written\r\n */\r\nutf8.write = function(string, buffer, offset) {\r\n var start = offset,\r\n c1, // character 1\r\n c2; // character 2\r\n for (var i = 0; i < string.length; ++i) {\r\n c1 = string.charCodeAt(i);\r\n if (c1 < 128) {\r\n buffer[offset++] = c1;\r\n } else if (c1 < 2048) {\r\n buffer[offset++] = c1 >> 6 | 192;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {\r\n c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);\r\n ++i;\r\n buffer[offset++] = c1 >> 18 | 240;\r\n buffer[offset++] = c1 >> 12 & 63 | 128;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else {\r\n buffer[offset++] = c1 >> 12 | 224;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n }\r\n }\r\n return offset - start;\r\n};\r\n","// This file exports just the bare minimum required to work with statically generated code.\r\n// Can be used as a drop-in replacement for the full library as it has the same general structure.\r\nvar protobuf = exports;\r\n\r\n var Writer =\r\nprotobuf.Writer = require(9);\r\nprotobuf.BufferWriter = Writer.BufferWriter;\r\n var Reader =\r\nprotobuf.Reader = require(6);\r\nprotobuf.BufferReader = Reader.BufferReader;\r\nprotobuf.util = require(8);\r\n\r\nfunction configure() {\r\n Reader._configure();\r\n}\r\n\r\nprotobuf.configure = configure;\r\n\r\n// Be nice to AMD\r\nif (typeof define === \"function\" && define.amd)\r\n define([\"long\"], function(Long) {\r\n if (Long) {\r\n protobuf.util.Long = Long;\r\n configure();\r\n }\r\n return protobuf;\r\n });\r\n","\"use strict\";\r\nmodule.exports = Reader;\r\n\r\nReader.BufferReader = BufferReader;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\nfunction indexOutOfRange(reader, writeLength) {\r\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\r\n}\r\n\r\n/**\r\n * Constructs a new reader instance using the specified buffer.\r\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n * @param {Uint8Array} buffer Buffer to read from\r\n */\r\nfunction Reader(buffer) {\r\n \r\n /**\r\n * Read buffer.\r\n * @type {Uint8Array}\r\n */\r\n this.buf = buffer;\r\n\r\n /**\r\n * Read buffer position.\r\n * @type {number}\r\n */\r\n this.pos = 0;\r\n\r\n /**\r\n * Read buffer length.\r\n * @type {number}\r\n */\r\n this.len = buffer.length;\r\n}\r\n\r\n/**\r\n * Creates a new reader using the specified buffer.\r\n * @param {Uint8Array} buffer Buffer to read from\r\n * @returns {BufferReader|Reader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\r\n */\r\nReader.create = function create(buffer) {\r\n return new (util.Buffer ? BufferReader : Reader)(buffer);\r\n};\r\n\r\n/** @alias Reader.prototype */\r\nvar ReaderPrototype = Reader.prototype;\r\n\r\nReaderPrototype._slice = ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice;\r\n\r\n/**\r\n * Reads a tag.\r\n * @returns {{id: number, wireType: number}} Field id and wire type\r\n */\r\nReaderPrototype.tag = function read_tag() {\r\n // deprecated internally, but remains for completeness\r\n var val = this.int32();\r\n return {\r\n id: val >>> 3,\r\n wireType: val & 7\r\n };\r\n};\r\n\r\n/**\r\n * Reads a varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.int32 = function read_int32() {\r\n // 1 byte\r\n var octet = this.buf[this.pos++],\r\n value = octet & 127;\r\n if (octet > 127) { // false if octet is undefined (pos >= len)\r\n // 2 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 7;\r\n if (octet > 127) {\r\n // 3 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 14;\r\n if (octet > 127) {\r\n // 4 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 21;\r\n if (octet > 127) {\r\n // 5 bytes\r\n octet = this.buf[this.pos++];\r\n value |= octet << 28;\r\n if (octet > 127) {\r\n // 6..10 bytes (sign extended)\r\n this.pos += 5;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (this.pos > this.len) {\r\n this.pos = this.len;\r\n throw indexOutOfRange(this);\r\n }\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a varint as an unsigned 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.uint32 = function read_uint32() {\r\n return this.int32() >>> 0;\r\n};\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sint32 = function read_sint32() {\r\n var value = this.int32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readLongVarint() {\r\n var lo = 0, hi = 0,\r\n i = 0, b = 0;\r\n if (this.len - this.pos > 9) { // fast route\r\n for (i = 0; i < 4; ++i) {\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n } else {\r\n for (i = 0; i < 4; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n }\r\n throw Error(\"invalid varint encoding\");\r\n}\r\n\r\nfunction read_int64_long() {\r\n return readLongVarint.call(this).toLong();\r\n}\r\n\r\nfunction read_int64_number() {\r\n return readLongVarint.call(this).toNumber();\r\n}\r\n\r\nfunction read_uint64_long() {\r\n return readLongVarint.call(this).toLong(true);\r\n}\r\n\r\nfunction read_uint64_number() {\r\n return readLongVarint.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sint64_long() {\r\n return readLongVarint.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sint64_number() {\r\n return readLongVarint.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads a varint as a signed 64 bit value.\r\n * @name Reader#int64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as an unsigned 64 bit value.\r\n * @name Reader#uint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 64 bit value.\r\n * @name Reader#sint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as a boolean.\r\n * @returns {boolean} Value read\r\n */\r\nReaderPrototype.bool = function read_bool() {\r\n return this.int32() !== 0;\r\n};\r\n\r\nfunction readFixed32(buf, end) {\r\n return buf[end - 4]\r\n | buf[end - 3] << 8\r\n | buf[end - 2] << 16\r\n | buf[end - 1] << 24;\r\n}\r\n\r\n/**\r\n * Reads fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.fixed32 = function read_fixed32() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n return readFixed32(this.buf, this.pos += 4);\r\n};\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sfixed32 = function read_sfixed32() {\r\n var value = this.fixed32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readFixed64(/* this: Reader */) {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n return new LongBits(readFixed32(this.buf, this.pos += 4), readFixed32(this.buf, this.pos += 4));\r\n}\r\n\r\nfunction read_fixed64_long() {\r\n return readFixed64.call(this).toLong(true);\r\n}\r\n\r\nfunction read_fixed64_number() {\r\n return readFixed64.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sfixed64_long() {\r\n return readFixed64.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sfixed64_number() {\r\n return readFixed64.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads fixed 64 bits.\r\n * @name Reader#fixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 64 bits.\r\n * @name Reader#sfixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\nvar readFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function readFloat_f32(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n : function readFloat_f32_le(buf, pos) {\r\n f8b[3] = buf[pos ];\r\n f8b[2] = buf[pos + 1];\r\n f8b[1] = buf[pos + 2];\r\n f8b[0] = buf[pos + 3];\r\n return f32[0];\r\n };\r\n })()\r\n : function readFloat_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Reads a float (32 bit) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.float = function read_float() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readFloat(this.buf, this.pos);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nvar readDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function readDouble_f64(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n f8b[4] = buf[pos + 4];\r\n f8b[5] = buf[pos + 5];\r\n f8b[6] = buf[pos + 6];\r\n f8b[7] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n : function readDouble_f64_le(buf, pos) {\r\n f8b[7] = buf[pos ];\r\n f8b[6] = buf[pos + 1];\r\n f8b[5] = buf[pos + 2];\r\n f8b[4] = buf[pos + 3];\r\n f8b[3] = buf[pos + 4];\r\n f8b[2] = buf[pos + 5];\r\n f8b[1] = buf[pos + 6];\r\n f8b[0] = buf[pos + 7];\r\n return f64[0];\r\n };\r\n })()\r\n : function readDouble_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Reads a double (64 bit float) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.double = function read_double() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readDouble(this.buf, this.pos);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a sequence of bytes preceeded by its length as a varint.\r\n * @returns {Uint8Array} Value read\r\n */\r\nReaderPrototype.bytes = function read_bytes() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\r\n ? new this.buf.constructor(0)\r\n : this._slice.call(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * Reads a string preceeded by its byte length as a varint.\r\n * @returns {string} Value read\r\n */\r\nReaderPrototype.string = function read_string() {\r\n var bytes = this.bytes();\r\n return utf8.read(bytes, 0, bytes.length);\r\n};\r\n\r\n/**\r\n * Skips the specified number of bytes if specified, otherwise skips a varint.\r\n * @param {number} [length] Length if known, otherwise a varint is assumed\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skip = function skip(length) {\r\n if (length === undefined) {\r\n do {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n } while (this.buf[this.pos++] & 128);\r\n } else {\r\n if (this.pos + length > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Skips the next element of the specified wire type.\r\n * @param {number} wireType Wire type received\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skipType = function(wireType) {\r\n switch (wireType) {\r\n case 0:\r\n this.skip();\r\n break;\r\n case 1:\r\n this.skip(8);\r\n break;\r\n case 2:\r\n this.skip(this.uint32());\r\n break;\r\n case 3:\r\n do { // eslint-disable-line no-constant-condition\r\n wireType = this.int32() & 7;\r\n if (wireType === 4)\r\n break;\r\n this.skipType(wireType);\r\n } while (true);\r\n break;\r\n case 5:\r\n this.skip(4);\r\n break;\r\n default:\r\n throw Error(\"invalid wire type: \" + wireType);\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance and frees all resources.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.reset = function reset(buffer) {\r\n if (buffer) {\r\n this.buf = buffer;\r\n this.len = buffer.length;\r\n } else {\r\n this.buf = null; // makes it throw\r\n this.len = 0;\r\n }\r\n this.pos = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of read operations, frees all resources and returns the remaining buffer.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nReaderPrototype.finish = function finish(buffer) {\r\n var remain = this.pos\r\n ? this._slice.call(this.buf, this.pos)\r\n : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\n// One time function to initialize BufferReader with the now-known buffer implementation's slice method\r\nvar initBufferReader = function() {\r\n var Buffer = util.Buffer;\r\n if (!Buffer)\r\n throw Error(\"Buffer is not supported\");\r\n BufferReaderPrototype._slice = Buffer.prototype.slice;\r\n readStringBuffer = Buffer.prototype.utf8Slice // around forever, but not present in browser buffer\r\n ? readStringBuffer_utf8Slice\r\n : readStringBuffer_toString;\r\n initBufferReader = false;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer reader instance.\r\n * @classdesc Wire format reader using node buffers.\r\n * @extends Reader\r\n * @constructor\r\n * @param {Buffer} buffer Buffer to read from\r\n */\r\nfunction BufferReader(buffer) {\r\n if (initBufferReader)\r\n initBufferReader();\r\n Reader.call(this, buffer);\r\n}\r\n\r\n/** @alias BufferReader.prototype */\r\nvar BufferReaderPrototype = BufferReader.prototype = Object.create(Reader.prototype);\r\n\r\nBufferReaderPrototype.constructor = BufferReader;\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.float = function read_float_buffer() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = this.buf.readFloatLE(this.pos, true);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.double = function read_double_buffer() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n var value = this.buf.readDoubleLE(this.pos, true);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\nvar readStringBuffer;\r\n\r\nfunction readStringBuffer_utf8Slice(buf, start, end) {\r\n return buf.utf8Slice(start, end); // fastest\r\n}\r\n\r\nfunction readStringBuffer_toString(buf, start, end) {\r\n return buf.toString(\"utf8\", start, end); // 2nd, again assertions\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.string = function read_string_buffer() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return readStringBuffer(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.finish = function finish_buffer(buffer) {\r\n var remain = this.pos ? this.buf.slice(this.pos) : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\nfunction configure() {\r\n if (util.Long) {\r\n ReaderPrototype.int64 = read_int64_long;\r\n ReaderPrototype.uint64 = read_uint64_long;\r\n ReaderPrototype.sint64 = read_sint64_long;\r\n ReaderPrototype.fixed64 = read_fixed64_long;\r\n ReaderPrototype.sfixed64 = read_sfixed64_long;\r\n } else {\r\n ReaderPrototype.int64 = read_int64_number;\r\n ReaderPrototype.uint64 = read_uint64_number;\r\n ReaderPrototype.sint64 = read_sint64_number;\r\n ReaderPrototype.fixed64 = read_fixed64_number;\r\n ReaderPrototype.sfixed64 = read_sfixed64_number;\r\n }\r\n}\r\n\r\nReader._configure = configure;\r\n\r\nconfigure();\r\n","\"use strict\";\r\n\r\nmodule.exports = LongBits;\r\n\r\nvar util = require(8);\r\n\r\n/**\r\n * Any compatible Long instance.\r\n * @typedef Long\r\n * @type {Object}\r\n * @property {number} low Low bits\r\n * @property {number} high High bits\r\n * @property {boolean} unsigned Whether unsigned or not\r\n */\r\n\r\n/**\r\n * Constructs new long bits.\r\n * @classdesc Helper class for working with the low and high bits of a 64 bit value.\r\n * @memberof util\r\n * @constructor\r\n * @param {number} lo Low bits\r\n * @param {number} hi High bits\r\n */\r\nfunction LongBits(lo, hi) { // make sure to always call this with unsigned 32bits for proper optimization\r\n\r\n /**\r\n * Low bits.\r\n * @type {number}\r\n */\r\n this.lo = lo;\r\n\r\n /**\r\n * High bits.\r\n * @type {number}\r\n */\r\n this.hi = hi;\r\n}\r\n\r\n/** @alias util.LongBits.prototype */\r\nvar LongBitsPrototype = LongBits.prototype;\r\n\r\n/**\r\n * Zero bits.\r\n * @memberof util.LongBits\r\n * @type {util.LongBits}\r\n */\r\nvar zero = LongBits.zero = new LongBits(0, 0);\r\n\r\nzero.toNumber = function() { return 0; };\r\nzero.zzEncode = zero.zzDecode = function() { return this; };\r\nzero.length = function() { return 1; };\r\n\r\n/**\r\n * Constructs new long bits from the specified number.\r\n * @param {number} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.fromNumber = function fromNumber(value) {\r\n if (value === 0)\r\n return zero;\r\n var sign = value < 0;\r\n value = Math.abs(value);\r\n var lo = value >>> 0,\r\n hi = (value - lo) / 4294967296 >>> 0;\r\n if (sign) {\r\n hi = ~hi >>> 0;\r\n lo = ~lo >>> 0;\r\n if (++lo > 4294967295) {\r\n lo = 0;\r\n if (++hi > 4294967295)\r\n hi = 0;\r\n }\r\n }\r\n return new LongBits(lo, hi);\r\n};\r\n\r\n/**\r\n * Constructs new long bits from a number, long or string.\r\n * @param {Long|number|string} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.from = function from(value) {\r\n switch (typeof value) {\r\n case \"number\":\r\n return LongBits.fromNumber(value);\r\n case \"string\":\r\n if (util.Long)\r\n value = util.Long.fromString(value);\r\n // fallthrough\r\n else\r\n return LongBits.fromNumber(parseInt(value, 10));\r\n }\r\n return (value.low || value.high) && new LongBits(value.low >>> 0, value.high >>> 0) || zero;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a possibly unsafe JavaScript number.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {number} Possibly unsafe number\r\n */\r\nLongBitsPrototype.toNumber = function toNumber(unsigned) {\r\n if (!unsigned && this.hi >>> 31) {\r\n this.lo = ~this.lo + 1 >>> 0;\r\n this.hi = ~this.hi >>> 0;\r\n if (!this.lo)\r\n this.hi = this.hi + 1 >>> 0;\r\n return -(this.lo + this.hi * 4294967296);\r\n }\r\n return this.lo + this.hi * 4294967296;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a long.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long} Long\r\n */\r\nLongBitsPrototype.toLong = function toLong(unsigned) {\r\n return util.Long\r\n ? new util.Long(this.lo, this.hi, unsigned)\r\n : { low: this.lo, high: this.hi, unsigned: Boolean(unsigned) };\r\n};\r\n\r\nvar charCodeAt = String.prototype.charCodeAt;\r\n\r\n/**\r\n * Constructs new long bits from the specified 8 characters long hash.\r\n * @param {string} hash Hash\r\n * @returns {util.LongBits} Bits\r\n */\r\nLongBits.fromHash = function fromHash(hash) {\r\n return new LongBits(\r\n ( charCodeAt.call(hash, 0)\r\n | charCodeAt.call(hash, 1) << 8\r\n | charCodeAt.call(hash, 2) << 16\r\n | charCodeAt.call(hash, 3) << 24) >>> 0\r\n ,\r\n ( charCodeAt.call(hash, 4)\r\n | charCodeAt.call(hash, 5) << 8\r\n | charCodeAt.call(hash, 6) << 16\r\n | charCodeAt.call(hash, 7) << 24) >>> 0\r\n );\r\n};\r\n\r\n/**\r\n * Converts this long bits to a 8 characters long hash.\r\n * @returns {string} Hash\r\n */\r\nLongBitsPrototype.toHash = function toHash() {\r\n return String.fromCharCode(\r\n this.lo & 255,\r\n this.lo >>> 8 & 255,\r\n this.lo >>> 16 & 255,\r\n this.lo >>> 24 & 255,\r\n this.hi & 255,\r\n this.hi >>> 8 & 255,\r\n this.hi >>> 16 & 255,\r\n this.hi >>> 24 & 255\r\n );\r\n};\r\n\r\n/**\r\n * Zig-zag encodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzEncode = function zzEncode() {\r\n var mask = this.hi >> 31;\r\n this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0;\r\n this.lo = ( this.lo << 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Zig-zag decodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzDecode = function zzDecode() {\r\n var mask = -(this.lo & 1);\r\n this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0;\r\n this.hi = ( this.hi >>> 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Calculates the length of this longbits when encoded as a varint.\r\n * @returns {number} Length\r\n */\r\nLongBitsPrototype.length = function length() {\r\n var part0 = this.lo,\r\n part1 = (this.lo >>> 28 | this.hi << 4) >>> 0,\r\n part2 = this.hi >>> 24;\r\n if (part2 === 0) {\r\n if (part1 === 0)\r\n return part0 < 1 << 14\r\n ? part0 < 1 << 7 ? 1 : 2\r\n : part0 < 1 << 21 ? 3 : 4;\r\n return part1 < 1 << 14\r\n ? part1 < 1 << 7 ? 5 : 6\r\n : part1 < 1 << 21 ? 7 : 8;\r\n }\r\n return part2 < 1 << 7 ? 9 : 10;\r\n};\r\n","\"use strict\";\r\n\r\nvar util = exports;\r\n\r\nvar LongBits = util.LongBits = require(\"./longbits\");\r\n\r\nutil.base64 = require(\"@protobufjs/base64\");\r\nutil.utf8 = require(\"@protobufjs/utf8\");\r\nutil.pool = require(\"@protobufjs/pool\");\r\n\r\n/**\r\n * Whether running within node or not.\r\n * @memberof util\r\n * @type {boolean}\r\n */\r\nvar isNode = util.isNode = Boolean(global.process && global.process.versions && global.process.versions.node);\r\n\r\n/**\r\n * Optional buffer class to use.\r\n * If you assign any compatible buffer implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Buffer = null;\r\n\r\nif (isNode)\r\n try { util.Buffer = require(\"buffer\").Buffer; } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Optional Long class to use.\r\n * If you assign any compatible long implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Long = global.dcodeIO && global.dcodeIO.Long || null;\r\n\r\nif (!util.Long && isNode)\r\n try { util.Long = require(\"long\"); } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Tests if the specified value is an integer.\r\n * @function\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is an integer\r\n */\r\nutil.isInteger = Number.isInteger || function isInteger(value) {\r\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a string.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a string\r\n */\r\nutil.isString = function isString(value) {\r\n return typeof value === \"string\" || value instanceof String;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a non-null object.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a non-null object\r\n */\r\nutil.isObject = function isObject(value) {\r\n return Boolean(value && typeof value === \"object\");\r\n};\r\n\r\n/**\r\n * Converts a number or long to an 8 characters long hash string.\r\n * @param {Long|number} value Value to convert\r\n * @returns {string} Hash\r\n */\r\nutil.longToHash = function longToHash(value) {\r\n return value\r\n ? LongBits.from(value).toHash()\r\n : \"\\0\\0\\0\\0\\0\\0\\0\\0\";\r\n};\r\n\r\n/**\r\n * Converts an 8 characters long hash string to a long or number.\r\n * @param {string} hash Hash\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long|number} Original value\r\n */\r\nutil.longFromHash = function longFromHash(hash, unsigned) {\r\n var bits = LongBits.fromHash(hash);\r\n if (util.Long)\r\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\r\n return bits.toNumber(Boolean(unsigned));\r\n};\r\n\r\n/**\r\n * Tests if two possibly long values are not equal.\r\n * @param {number|Long} a First value\r\n * @param {number|Long} b Second value\r\n * @returns {boolean} `true` if not equal\r\n */\r\nutil.longNeq = function longNeq(a, b) {\r\n return typeof a === \"number\"\r\n ? typeof b === \"number\"\r\n ? a !== b\r\n : (a = LongBits.fromNumber(a)).lo !== b.low || a.hi !== b.high\r\n : typeof b === \"number\"\r\n ? (b = LongBits.fromNumber(b)).lo !== a.low || b.hi !== a.high\r\n : a.low !== b.low || a.high !== b.high;\r\n};\r\n\r\n/**\r\n * Defines the specified properties on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {Object} descriptors Property descriptors\r\n * @returns {undefined}\r\n */\r\nutil.props = function props(target, descriptors) {\r\n Object.keys(descriptors).forEach(function(key) {\r\n util.prop(target, key, descriptors[key]);\r\n });\r\n};\r\n\r\n/**\r\n * Defines the specified property on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {string} key Property name\r\n * @param {Object} descriptor Property descriptor\r\n * @returns {undefined}\r\n */\r\nutil.prop = function prop(target, key, descriptor) {\r\n var ie8 = !-[1,];\r\n var ucKey = key.substring(0, 1).toUpperCase() + key.substring(1);\r\n if (descriptor.get)\r\n target[\"get\" + ucKey] = descriptor.get;\r\n if (descriptor.set)\r\n target[\"set\" + ucKey] = ie8\r\n ? function(value) {\r\n descriptor.set.call(this, value);\r\n this[key] = value;\r\n }\r\n : descriptor.set;\r\n if (ie8) {\r\n if (descriptor.value !== undefined)\r\n target[key] = descriptor.value;\r\n } else\r\n Object.defineProperty(target, key, descriptor);\r\n};\r\n\r\n/**\r\n * An immuable empty array.\r\n * @memberof util\r\n * @type {Array.<*>}\r\n */\r\nutil.emptyArray = Object.freeze([]);\r\n\r\n/**\r\n * An immutable empty object.\r\n * @type {Object}\r\n */\r\nutil.emptyObject = Object.freeze({});\r\n","\"use strict\";\r\nmodule.exports = Writer;\r\n\r\nWriter.BufferWriter = BufferWriter;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n base64 = util.base64,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\n/**\r\n * Constructs a new writer operation instance.\r\n * @classdesc Scheduled writer operation.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {function(*, Uint8Array, number)} fn Function to call\r\n * @param {*} val Value to write\r\n * @param {number} len Value byte length\r\n * @private\r\n * @ignore\r\n */\r\nfunction Op(fn, val, len) {\r\n\r\n /**\r\n * Function to call.\r\n * @type {function(Uint8Array, number, *)}\r\n */\r\n this.fn = fn;\r\n\r\n /**\r\n * Value to write.\r\n * @type {*}\r\n */\r\n this.val = val;\r\n\r\n /**\r\n * Value byte length.\r\n * @type {number}\r\n */\r\n this.len = len;\r\n\r\n /**\r\n * Next operation.\r\n * @type {?Writer.Op}\r\n */\r\n this.next = null;\r\n}\r\n\r\nWriter.Op = Op;\r\n\r\nfunction noop() {} // eslint-disable-line no-empty-function\r\n\r\n/**\r\n * Constructs a new writer state instance.\r\n * @classdesc Copied writer state.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {Writer} writer Writer to copy state from\r\n * @param {State} next Next state entry\r\n * @private\r\n * @ignore\r\n */\r\nfunction State(writer, next) {\r\n\r\n /**\r\n * Current head.\r\n * @type {Writer.Op}\r\n */\r\n this.head = writer.head;\r\n\r\n /**\r\n * Current tail.\r\n * @type {Writer.Op}\r\n */\r\n this.tail = writer.tail;\r\n\r\n /**\r\n * Current buffer length.\r\n * @type {number}\r\n */\r\n this.len = writer.len;\r\n\r\n /**\r\n * Next state.\r\n * @type {?State}\r\n */\r\n this.next = next;\r\n}\r\n\r\nWriter.State = State;\r\n\r\n/**\r\n * Constructs a new writer instance.\r\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n */\r\nfunction Writer() {\r\n\r\n /**\r\n * Current length.\r\n * @type {number}\r\n */\r\n this.len = 0;\r\n\r\n /**\r\n * Operations head.\r\n * @type {Object}\r\n */\r\n this.head = new Op(noop, 0, 0);\r\n\r\n /**\r\n * Operations tail\r\n * @type {Object}\r\n */\r\n this.tail = this.head;\r\n\r\n /**\r\n * Linked forked states.\r\n * @type {?Object}\r\n */\r\n this.states = null;\r\n\r\n // When a value is written, the writer calculates its byte length and puts it into a linked\r\n // list of operations to perform when finish() is called. This both allows us to allocate\r\n // buffers of the exact required size and reduces the amount of work we have to do compared\r\n // to first calculating over objects and then encoding over objects. In our case, the encoding\r\n // part is just a linked list walk calling linked operations with already prepared values.\r\n}\r\n\r\n/**\r\n * Creates a new writer.\r\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\r\n */\r\nWriter.create = function create() {\r\n return new (util.Buffer ? BufferWriter : Writer);\r\n};\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nWriter.alloc = function alloc(size) {\r\n return new ArrayImpl(size);\r\n};\r\n\r\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\r\nif (ArrayImpl !== Array)\r\n Writer.alloc = util.pool(Writer.alloc, ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice);\r\n\r\n/** @alias Writer.prototype */\r\nvar WriterPrototype = Writer.prototype;\r\n\r\n/**\r\n * Pushes a new operation to the queue.\r\n * @param {function(Uint8Array, number, *)} fn Function to call\r\n * @param {number} len Value byte length\r\n * @param {number} val Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.push = function push(fn, len, val) {\r\n var op = new Op(fn, val, len);\r\n this.tail.next = op;\r\n this.tail = op;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\nfunction writeByte(val, buf, pos) {\r\n buf[pos] = val & 255;\r\n}\r\n\r\n/**\r\n * Writes a tag.\r\n * @param {number} id Field id\r\n * @param {number} wireType Wire type\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.tag = function write_tag(id, wireType) {\r\n // deprecated internally, but remains for completeness\r\n return this.uint32(id << 3 | wireType & 7);\r\n};\r\n\r\nfunction writeVarint32(val, buf, pos) {\r\n while (val > 127) {\r\n buf[pos++] = val & 127 | 128;\r\n val >>>= 7;\r\n }\r\n buf[pos] = val;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 32 bit value as a varint.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.uint32 = function write_uint32(value) {\r\n value >>>= 0;\r\n return value < 128\r\n ? this.push(writeByte, 1, value)\r\n : this.push(writeVarint32,\r\n value < 16384 ? 2\r\n : value < 2097152 ? 3\r\n : value < 268435456 ? 4\r\n : 5\r\n , value);\r\n};\r\n\r\n/**\r\n * Writes a signed 32 bit value as a varint.\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.int32 = function write_int32(value) {\r\n return value < 0\r\n ? this.push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\r\n : this.uint32(value);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as a varint, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sint32 = function write_sint32(value) {\r\n return this.uint32(value << 1 ^ value >> 31);\r\n};\r\n\r\nfunction writeVarint64(val, buf, pos) {\r\n // tends to deoptimize. stays optimized when using bits directly.\r\n while (val.hi) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\r\n val.hi >>>= 7;\r\n }\r\n while (val.lo > 127) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = val.lo >>> 7;\r\n }\r\n buf[pos++] = val.lo;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 64 bit value as a varint.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.uint64 = function write_uint64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint.\r\n * @function\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.int64 = WriterPrototype.uint64;\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sint64 = function write_sint64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a boolish value as a varint.\r\n * @param {boolean} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bool = function write_bool(value) {\r\n return this.push(writeByte, 1, value ? 1 : 0);\r\n};\r\n\r\nfunction writeFixed32(val, buf, pos) {\r\n buf[pos++] = val & 255;\r\n buf[pos++] = val >>> 8 & 255;\r\n buf[pos++] = val >>> 16 & 255;\r\n buf[pos ] = val >>> 24;\r\n}\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fixed32 = function write_fixed32(value) {\r\n return this.push(writeFixed32, 4, value >>> 0);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sfixed32 = function write_sfixed32(value) {\r\n return this.push(writeFixed32, 4, value << 1 ^ value >> 31);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.fixed64 = function write_fixed64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sfixed64 = function write_sfixed64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\nvar writeFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function writeFloat_f32(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos ] = f8b[3];\r\n }\r\n : function writeFloat_f32_le(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeFloat_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Writes a float (32 bit).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.float = function write_float(value) {\r\n return this.push(writeFloat, 4, value);\r\n};\r\n\r\nvar writeDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function writeDouble_f64(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[6];\r\n buf[pos ] = f8b[7];\r\n }\r\n : function writeDouble_f64_le(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[7];\r\n buf[pos++] = f8b[6];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeDouble_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Writes a double (64 bit float).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.double = function write_double(value) {\r\n return this.push(writeDouble, 8, value);\r\n};\r\n\r\nvar writeBytes = ArrayImpl.prototype.set\r\n ? function writeBytes_set(val, buf, pos) {\r\n buf.set(val, pos);\r\n }\r\n : function writeBytes_for(val, buf, pos) {\r\n for (var i = 0; i < val.length; ++i)\r\n buf[pos + i] = val[i];\r\n };\r\n\r\n/**\r\n * Writes a sequence of bytes.\r\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bytes = function write_bytes(value) {\r\n var len = value.length >>> 0;\r\n if (typeof value === \"string\" && len) {\r\n var buf = Writer.alloc(len = base64.length(value));\r\n base64.decode(value, buf, 0);\r\n value = buf;\r\n }\r\n return len\r\n ? this.uint32(len).push(writeBytes, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Writes a string.\r\n * @param {string} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.string = function write_string(value) {\r\n var len = utf8.length(value);\r\n return len\r\n ? this.uint32(len).push(utf8.write, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Forks this writer's state by pushing it to a stack.\r\n * Calling {@link Writer#}, {@link Writer#reset} or {@link Writer#finish} resets the writer to the previous state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fork = function fork() {\r\n this.states = new State(this, this.states);\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance to the last state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.reset = function reset() {\r\n if (this.states) {\r\n this.head = this.states.head;\r\n this.tail = this.states.tail;\r\n this.len = this.states.len;\r\n this.states = this.states.next;\r\n } else {\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\r\n * @param {number} [id] Id with wire type 2 to prepend as a tag where applicable\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.ldelim = function ldelim(id) {\r\n var head = this.head,\r\n tail = this.tail,\r\n len = this.len;\r\n this.reset();\r\n if (id !== undefined)\r\n this.uint32(id << 3 | 2);\r\n this.uint32(len);\r\n this.tail.next = head.next; // skip noop\r\n this.tail = tail;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of write operations and frees all resources.\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nWriterPrototype.finish = function finish() {\r\n var head = this.head.next, // skip noop\r\n buf = this.constructor.alloc(this.len);\r\n this.reset();\r\n var pos = 0;\r\n while (head) {\r\n head.fn(head.val, buf, pos);\r\n pos += head.len;\r\n head = head.next;\r\n }\r\n return buf;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer writer instance.\r\n * @classdesc Wire format writer using node buffers.\r\n * @exports BufferWriter\r\n * @extends Writer\r\n * @constructor\r\n */\r\nfunction BufferWriter() {\r\n Writer.call(this);\r\n}\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nBufferWriter.alloc = function alloc_buffer(size) {\r\n BufferWriter.alloc = util.Buffer.allocUnsafe\r\n ? util.Buffer.allocUnsafe\r\n : function allocUnsafeNew(size) { return new util.Buffer(size); };\r\n return BufferWriter.alloc(size);\r\n};\r\n\r\n/** @alias BufferWriter.prototype */\r\nvar BufferWriterPrototype = BufferWriter.prototype = Object.create(Writer.prototype);\r\nBufferWriterPrototype.constructor = BufferWriter;\r\n\r\nfunction writeFloatBuffer(val, buf, pos) {\r\n buf.writeFloatLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.float = function write_float_buffer(value) {\r\n return this.push(writeFloatBuffer, 4, value);\r\n};\r\n\r\nfunction writeDoubleBuffer(val, buf, pos) {\r\n buf.writeDoubleLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.double = function write_double_buffer(value) {\r\n return this.push(writeDoubleBuffer, 8, value);\r\n};\r\n\r\nfunction writeBytesBuffer(val, buf, pos) {\r\n if (val.length)\r\n val.copy(buf, pos, 0, val.length);\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.bytes = function write_bytes_buffer(value) {\r\n if (typeof value === \"string\")\r\n value = util.Buffer.from && util.Buffer.from(value, \"base64\") || new util.Buffer(value, \"base64\");\r\n var len = value.length >>> 0;\r\n return len\r\n ? this.uint32(len).push(writeBytesBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\nvar writeStringBuffer = (function() { // eslint-disable-line wrap-iife\r\n return util.Buffer && util.Buffer.prototype.utf8Write // around forever, but not present in browser buffer\r\n ? function writeString_buffer_utf8Write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.utf8Write(val, pos);\r\n }\r\n : function writeString_buffer_write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.write(val, pos);\r\n };\r\n // Note that the plain JS encoder is faster for short strings, probably because of redundant assertions.\r\n // For a raw utf8Write, the breaking point is about 20 characters, for write it is around 40 characters.\r\n // Unfortunately, this does not translate 1:1 to real use cases, hence the common \"good enough\" limit of 40.\r\n})();\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.string = function write_string_buffer(value) {\r\n var len = value.length < 40\r\n ? utf8.length(value)\r\n : util.Buffer.byteLength(value);\r\n return len\r\n ? this.uint32(len).push(writeStringBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n"],"sourceRoot":"."} \ No newline at end of file +{"version":3,"sources":["node_modules/browser-pack/_prelude.js","lib/ieee754.js","node_modules/@protobufjs/base64/index.js","node_modules/@protobufjs/pool/index.js","node_modules/@protobufjs/utf8/index.js","runtime","src/reader.js","src/util/longbits.js","src/util/runtime.js","src/writer.js"],"names":[],"mappings":";;;;;;AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjlBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACzMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC3JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"protobuf.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o> 1,\r\n nBits = -7,\r\n i = isBE ? 0 : (nBytes - 1),\r\n d = isBE ? 1 : -1,\r\n s = buffer[offset + i];\r\n\r\n i += d;\r\n\r\n e = s & ((1 << (-nBits)) - 1);\r\n s >>= (-nBits);\r\n nBits += eLen;\r\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n m = e & ((1 << (-nBits)) - 1);\r\n e >>= (-nBits);\r\n nBits += mLen;\r\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n if (e === 0) {\r\n e = 1 - eBias;\r\n } else if (e === eMax) {\r\n return m ? NaN : ((s ? -1 : 1) * Infinity);\r\n } else {\r\n m = m + Math.pow(2, mLen);\r\n e = e - eBias;\r\n }\r\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\r\n};\r\n\r\nexports.write = function writeIEEE754(buffer, value, offset, isBE, mLen, nBytes) {\r\n var e, m, c,\r\n eLen = nBytes * 8 - mLen - 1,\r\n eMax = (1 << eLen) - 1,\r\n eBias = eMax >> 1,\r\n rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0),\r\n i = isBE ? (nBytes - 1) : 0,\r\n d = isBE ? -1 : 1,\r\n s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\r\n\r\n value = Math.abs(value);\r\n\r\n if (isNaN(value) || value === Infinity) {\r\n m = isNaN(value) ? 1 : 0;\r\n e = eMax;\r\n } else {\r\n e = Math.floor(Math.log(value) / Math.LN2);\r\n if (value * (c = Math.pow(2, -e)) < 1) {\r\n e--;\r\n c *= 2;\r\n }\r\n if (e + eBias >= 1) {\r\n value += rt / c;\r\n } else {\r\n value += rt * Math.pow(2, 1 - eBias);\r\n }\r\n if (value * c >= 2) {\r\n e++;\r\n c /= 2;\r\n }\r\n\r\n if (e + eBias >= eMax) {\r\n m = 0;\r\n e = eMax;\r\n } else if (e + eBias >= 1) {\r\n m = (value * c - 1) * Math.pow(2, mLen);\r\n e = e + eBias;\r\n } else {\r\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\r\n e = 0;\r\n }\r\n }\r\n\r\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8);\r\n\r\n e = (e << mLen) | m;\r\n eLen += mLen;\r\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8);\r\n\r\n buffer[offset + i - d] |= s * 128;\r\n};\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal base64 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar base64 = exports;\r\n\r\n/**\r\n * Calculates the byte length of a base64 encoded string.\r\n * @param {string} string Base64 encoded string\r\n * @returns {number} Byte length\r\n */\r\nbase64.length = function length(string) {\r\n var p = string.length;\r\n if (!p)\r\n return 0;\r\n var n = 0;\r\n while (--p % 4 > 1 && string.charAt(p) === '=')\r\n ++n;\r\n return Math.ceil(string.length * 3) / 4 - n;\r\n};\r\n\r\n// Base64 encoding table\r\nvar b64 = [];\r\n\r\n// Base64 decoding table\r\nvar s64 = [];\r\n\r\n// 65..90, 97..122, 48..57, 43, 47\r\nfor (var i = 0; i < 64;)\r\n s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++;\r\n\r\n/**\r\n * Encodes a buffer to a base64 encoded string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} Base64 encoded string\r\n */\r\nbase64.encode = function encode(buffer, start, end) {\r\n var string = []; // alt: new Array(Math.ceil((end - start) / 3) * 4);\r\n var i = 0, // output index\r\n j = 0, // goto index\r\n t; // temporary\r\n while (start < end) {\r\n var b = buffer[start++];\r\n switch (j) {\r\n case 0:\r\n string[i++] = b64[b >> 2];\r\n t = (b & 3) << 4;\r\n j = 1;\r\n break;\r\n case 1:\r\n string[i++] = b64[t | b >> 4];\r\n t = (b & 15) << 2;\r\n j = 2;\r\n break;\r\n case 2:\r\n string[i++] = b64[t | b >> 6];\r\n string[i++] = b64[b & 63];\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j) {\r\n string[i++] = b64[t];\r\n string[i ] = 61;\r\n if (j === 1)\r\n string[i + 1] = 61;\r\n }\r\n return String.fromCharCode.apply(String, string);\r\n};\r\n\r\nvar invalidEncoding = \"invalid encoding\";\r\n\r\n/**\r\n * Decodes a base64 encoded string to a buffer.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Number of bytes written\r\n * @throws {Error} If encoding is invalid\r\n */\r\nbase64.decode = function decode(string, buffer, offset) {\r\n var start = offset;\r\n var j = 0, // goto index\r\n t; // temporary\r\n for (var i = 0; i < string.length;) {\r\n var c = string.charCodeAt(i++);\r\n if (c === 61 && j > 1)\r\n break;\r\n if ((c = s64[c]) === undefined)\r\n throw Error(invalidEncoding);\r\n switch (j) {\r\n case 0:\r\n t = c;\r\n j = 1;\r\n break;\r\n case 1:\r\n buffer[offset++] = t << 2 | (c & 48) >> 4;\r\n t = c;\r\n j = 2;\r\n break;\r\n case 2:\r\n buffer[offset++] = (t & 15) << 4 | (c & 60) >> 2;\r\n t = c;\r\n j = 3;\r\n break;\r\n case 3:\r\n buffer[offset++] = (t & 3) << 6 | c;\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j === 1)\r\n throw Error(invalidEncoding);\r\n return offset - start;\r\n};\r\n","\"use strict\";\r\nmodule.exports = pool;\r\n\r\n/**\r\n * An allocator as used by {@link util.pool}.\r\n * @typedef PoolAllocator\r\n * @type {function}\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\n\r\n/**\r\n * A slicer as used by {@link util.pool}.\r\n * @typedef PoolSlicer\r\n * @type {function}\r\n * @param {number} start Start offset\r\n * @param {number} end End offset\r\n * @returns {Uint8Array} Buffer slice\r\n * @this {Uint8Array}\r\n */\r\n\r\n/**\r\n * A general purpose buffer pool.\r\n * @memberof util\r\n * @function\r\n * @param {PoolAllocator} alloc Allocator\r\n * @param {PoolSlicer} slice Slicer\r\n * @param {number} [size=8192] Slab size\r\n * @returns {PoolAllocator} Pooled allocator\r\n */\r\nfunction pool(alloc, slice, size) {\r\n var SIZE = size || 8192;\r\n var MAX = SIZE >>> 1;\r\n var slab = null;\r\n var offset = SIZE;\r\n return function pool_alloc(size) {\r\n if (size > MAX)\r\n return alloc(size);\r\n if (offset + size > SIZE) {\r\n slab = alloc(SIZE);\r\n offset = 0;\r\n }\r\n var buf = slice.call(slab, offset, offset += size);\r\n if (offset & 7) // align to 32 bit\r\n offset = (offset | 7) + 1;\r\n return buf;\r\n };\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal UTF8 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar utf8 = exports;\r\n\r\n/**\r\n * Calculates the UTF8 byte length of a string.\r\n * @param {string} string String\r\n * @returns {number} Byte length\r\n */\r\nutf8.length = function length(string) {\r\n var len = 0,\r\n c = 0;\r\n for (var i = 0; i < string.length; ++i) {\r\n c = string.charCodeAt(i);\r\n if (c < 128)\r\n len += 1;\r\n else if (c < 2048)\r\n len += 2;\r\n else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {\r\n ++i;\r\n len += 4;\r\n } else\r\n len += 3;\r\n }\r\n return len;\r\n};\r\n\r\n/**\r\n * Reads UTF8 bytes as a string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} String read\r\n */\r\nutf8.read = function(buffer, start, end) {\r\n var len = end - start;\r\n if (len < 1)\r\n return \"\";\r\n var string = [],\r\n i = 0, // char offset\r\n t; // temporary\r\n while (start < end) {\r\n t = buffer[start++];\r\n if (t < 128)\r\n string[i++] = t;\r\n else if (t > 191 && t < 224)\r\n string[i++] = (t & 31) << 6 | buffer[start++] & 63;\r\n else if (t > 239 && t < 365) {\r\n t = ((t & 7) << 18 | (buffer[start++] & 63) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63) - 0x10000;\r\n string[i++] = 0xD800 + (t >> 10);\r\n string[i++] = 0xDC00 + (t & 1023);\r\n } else\r\n string[i++] = (t & 15) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63;\r\n }\r\n return String.fromCharCode.apply(String, string.slice(0, i));\r\n};\r\n\r\n/**\r\n * Writes a string as UTF8 bytes.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Bytes written\r\n */\r\nutf8.write = function(string, buffer, offset) {\r\n var start = offset,\r\n c1, // character 1\r\n c2; // character 2\r\n for (var i = 0; i < string.length; ++i) {\r\n c1 = string.charCodeAt(i);\r\n if (c1 < 128) {\r\n buffer[offset++] = c1;\r\n } else if (c1 < 2048) {\r\n buffer[offset++] = c1 >> 6 | 192;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {\r\n c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);\r\n ++i;\r\n buffer[offset++] = c1 >> 18 | 240;\r\n buffer[offset++] = c1 >> 12 & 63 | 128;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else {\r\n buffer[offset++] = c1 >> 12 | 224;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n }\r\n }\r\n return offset - start;\r\n};\r\n","// This file exports just the bare minimum required to work with statically generated code.\r\n// Can be used as a drop-in replacement for the full library as it has the same general structure.\r\nvar protobuf = exports;\r\n\r\nvar Writer = protobuf.Writer = require(9);\r\nprotobuf.BufferWriter = Writer.BufferWriter;\r\nvar Reader = protobuf.Reader = require(6);\r\nprotobuf.BufferReader = Reader.BufferReader;\r\nprotobuf.util = require(8);\r\nprotobuf.roots = {};\r\nprotobuf.configure = configure;\r\n\r\nfunction configure() {\r\n Reader._configure();\r\n}\r\n\r\n// Be nice to AMD\r\nif (typeof define === \"function\" && define.amd)\r\n define([\"long\"], function(Long) {\r\n if (Long) {\r\n protobuf.util.Long = Long;\r\n configure();\r\n }\r\n return protobuf;\r\n });\r\n","\"use strict\";\r\nmodule.exports = Reader;\r\n\r\nReader.BufferReader = BufferReader;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\nfunction indexOutOfRange(reader, writeLength) {\r\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\r\n}\r\n\r\n/**\r\n * Constructs a new reader instance using the specified buffer.\r\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n * @param {Uint8Array} buffer Buffer to read from\r\n */\r\nfunction Reader(buffer) {\r\n \r\n /**\r\n * Read buffer.\r\n * @type {Uint8Array}\r\n */\r\n this.buf = buffer;\r\n\r\n /**\r\n * Read buffer position.\r\n * @type {number}\r\n */\r\n this.pos = 0;\r\n\r\n /**\r\n * Read buffer length.\r\n * @type {number}\r\n */\r\n this.len = buffer.length;\r\n}\r\n\r\n/**\r\n * Creates a new reader using the specified buffer.\r\n * @param {Uint8Array} buffer Buffer to read from\r\n * @returns {BufferReader|Reader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\r\n */\r\nReader.create = function create(buffer) {\r\n return new (util.Buffer ? BufferReader : Reader)(buffer);\r\n};\r\n\r\n/** @alias Reader.prototype */\r\nvar ReaderPrototype = Reader.prototype;\r\n\r\nReaderPrototype._slice = ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice;\r\n\r\n/**\r\n * Reads a tag.\r\n * @returns {{id: number, wireType: number}} Field id and wire type\r\n */\r\nReaderPrototype.tag = function read_tag() {\r\n // deprecated internally, but remains for completeness\r\n var val = this.int32();\r\n return {\r\n id: val >>> 3,\r\n wireType: val & 7\r\n };\r\n};\r\n\r\n/**\r\n * Reads a varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.int32 = function read_int32() {\r\n // 1 byte\r\n var octet = this.buf[this.pos++],\r\n value = octet & 127;\r\n if (octet > 127) { // false if octet is undefined (pos >= len)\r\n // 2 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 7;\r\n if (octet > 127) {\r\n // 3 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 14;\r\n if (octet > 127) {\r\n // 4 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 21;\r\n if (octet > 127) {\r\n // 5 bytes\r\n octet = this.buf[this.pos++];\r\n value |= octet << 28;\r\n if (octet > 127) {\r\n // 6..10 bytes (sign extended)\r\n this.pos += 5;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (this.pos > this.len) {\r\n this.pos = this.len;\r\n throw indexOutOfRange(this);\r\n }\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a varint as an unsigned 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.uint32 = function read_uint32() {\r\n return this.int32() >>> 0;\r\n};\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sint32 = function read_sint32() {\r\n var value = this.int32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readLongVarint() {\r\n var lo = 0, hi = 0,\r\n i = 0, b = 0;\r\n if (this.len - this.pos > 9) { // fast route\r\n for (i = 0; i < 4; ++i) {\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n } else {\r\n for (i = 0; i < 4; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n }\r\n throw Error(\"invalid varint encoding\");\r\n}\r\n\r\nfunction read_int64_long() {\r\n return readLongVarint.call(this).toLong();\r\n}\r\n\r\nfunction read_int64_number() {\r\n return readLongVarint.call(this).toNumber();\r\n}\r\n\r\nfunction read_uint64_long() {\r\n return readLongVarint.call(this).toLong(true);\r\n}\r\n\r\nfunction read_uint64_number() {\r\n return readLongVarint.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sint64_long() {\r\n return readLongVarint.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sint64_number() {\r\n return readLongVarint.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads a varint as a signed 64 bit value.\r\n * @name Reader#int64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as an unsigned 64 bit value.\r\n * @name Reader#uint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 64 bit value.\r\n * @name Reader#sint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as a boolean.\r\n * @returns {boolean} Value read\r\n */\r\nReaderPrototype.bool = function read_bool() {\r\n return this.int32() !== 0;\r\n};\r\n\r\nfunction readFixed32(buf, end) {\r\n return buf[end - 4]\r\n | buf[end - 3] << 8\r\n | buf[end - 2] << 16\r\n | buf[end - 1] << 24;\r\n}\r\n\r\n/**\r\n * Reads fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.fixed32 = function read_fixed32() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n return readFixed32(this.buf, this.pos += 4);\r\n};\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sfixed32 = function read_sfixed32() {\r\n var value = this.fixed32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readFixed64(/* this: Reader */) {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n return new LongBits(readFixed32(this.buf, this.pos += 4), readFixed32(this.buf, this.pos += 4));\r\n}\r\n\r\nfunction read_fixed64_long() {\r\n return readFixed64.call(this).toLong(true);\r\n}\r\n\r\nfunction read_fixed64_number() {\r\n return readFixed64.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sfixed64_long() {\r\n return readFixed64.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sfixed64_number() {\r\n return readFixed64.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads fixed 64 bits.\r\n * @name Reader#fixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 64 bits.\r\n * @name Reader#sfixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\nvar readFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function readFloat_f32(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n : function readFloat_f32_le(buf, pos) {\r\n f8b[3] = buf[pos ];\r\n f8b[2] = buf[pos + 1];\r\n f8b[1] = buf[pos + 2];\r\n f8b[0] = buf[pos + 3];\r\n return f32[0];\r\n };\r\n })()\r\n : function readFloat_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Reads a float (32 bit) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.float = function read_float() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readFloat(this.buf, this.pos);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nvar readDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function readDouble_f64(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n f8b[4] = buf[pos + 4];\r\n f8b[5] = buf[pos + 5];\r\n f8b[6] = buf[pos + 6];\r\n f8b[7] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n : function readDouble_f64_le(buf, pos) {\r\n f8b[7] = buf[pos ];\r\n f8b[6] = buf[pos + 1];\r\n f8b[5] = buf[pos + 2];\r\n f8b[4] = buf[pos + 3];\r\n f8b[3] = buf[pos + 4];\r\n f8b[2] = buf[pos + 5];\r\n f8b[1] = buf[pos + 6];\r\n f8b[0] = buf[pos + 7];\r\n return f64[0];\r\n };\r\n })()\r\n : function readDouble_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Reads a double (64 bit float) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.double = function read_double() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readDouble(this.buf, this.pos);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a sequence of bytes preceeded by its length as a varint.\r\n * @returns {Uint8Array} Value read\r\n */\r\nReaderPrototype.bytes = function read_bytes() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\r\n ? new this.buf.constructor(0)\r\n : this._slice.call(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * Reads a string preceeded by its byte length as a varint.\r\n * @returns {string} Value read\r\n */\r\nReaderPrototype.string = function read_string() {\r\n var bytes = this.bytes();\r\n return utf8.read(bytes, 0, bytes.length);\r\n};\r\n\r\n/**\r\n * Skips the specified number of bytes if specified, otherwise skips a varint.\r\n * @param {number} [length] Length if known, otherwise a varint is assumed\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skip = function skip(length) {\r\n if (length === undefined) {\r\n do {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n } while (this.buf[this.pos++] & 128);\r\n } else {\r\n if (this.pos + length > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Skips the next element of the specified wire type.\r\n * @param {number} wireType Wire type received\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skipType = function(wireType) {\r\n switch (wireType) {\r\n case 0:\r\n this.skip();\r\n break;\r\n case 1:\r\n this.skip(8);\r\n break;\r\n case 2:\r\n this.skip(this.uint32());\r\n break;\r\n case 3:\r\n do { // eslint-disable-line no-constant-condition\r\n wireType = this.int32() & 7;\r\n if (wireType === 4)\r\n break;\r\n this.skipType(wireType);\r\n } while (true);\r\n break;\r\n case 5:\r\n this.skip(4);\r\n break;\r\n default:\r\n throw Error(\"invalid wire type: \" + wireType);\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance and frees all resources.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.reset = function reset(buffer) {\r\n if (buffer) {\r\n this.buf = buffer;\r\n this.len = buffer.length;\r\n } else {\r\n this.buf = null; // makes it throw\r\n this.len = 0;\r\n }\r\n this.pos = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of read operations, frees all resources and returns the remaining buffer.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nReaderPrototype.finish = function finish(buffer) {\r\n var remain = this.pos\r\n ? this._slice.call(this.buf, this.pos)\r\n : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\n// One time function to initialize BufferReader with the now-known buffer implementation's slice method\r\nvar initBufferReader = function() {\r\n var Buffer = util.Buffer;\r\n if (!Buffer)\r\n throw Error(\"Buffer is not supported\");\r\n BufferReaderPrototype._slice = Buffer.prototype.slice;\r\n readStringBuffer = Buffer.prototype.utf8Slice // around forever, but not present in browser buffer\r\n ? readStringBuffer_utf8Slice\r\n : readStringBuffer_toString;\r\n initBufferReader = false;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer reader instance.\r\n * @classdesc Wire format reader using node buffers.\r\n * @extends Reader\r\n * @constructor\r\n * @param {Buffer} buffer Buffer to read from\r\n */\r\nfunction BufferReader(buffer) {\r\n if (initBufferReader)\r\n initBufferReader();\r\n Reader.call(this, buffer);\r\n}\r\n\r\n/** @alias BufferReader.prototype */\r\nvar BufferReaderPrototype = BufferReader.prototype = Object.create(Reader.prototype);\r\n\r\nBufferReaderPrototype.constructor = BufferReader;\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.float = function read_float_buffer() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = this.buf.readFloatLE(this.pos, true);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.double = function read_double_buffer() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n var value = this.buf.readDoubleLE(this.pos, true);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\nvar readStringBuffer;\r\n\r\nfunction readStringBuffer_utf8Slice(buf, start, end) {\r\n return buf.utf8Slice(start, end); // fastest\r\n}\r\n\r\nfunction readStringBuffer_toString(buf, start, end) {\r\n return buf.toString(\"utf8\", start, end); // 2nd, again assertions\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.string = function read_string_buffer() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return readStringBuffer(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.finish = function finish_buffer(buffer) {\r\n var remain = this.pos ? this.buf.slice(this.pos) : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\nfunction configure() {\r\n if (util.Long) {\r\n ReaderPrototype.int64 = read_int64_long;\r\n ReaderPrototype.uint64 = read_uint64_long;\r\n ReaderPrototype.sint64 = read_sint64_long;\r\n ReaderPrototype.fixed64 = read_fixed64_long;\r\n ReaderPrototype.sfixed64 = read_sfixed64_long;\r\n } else {\r\n ReaderPrototype.int64 = read_int64_number;\r\n ReaderPrototype.uint64 = read_uint64_number;\r\n ReaderPrototype.sint64 = read_sint64_number;\r\n ReaderPrototype.fixed64 = read_fixed64_number;\r\n ReaderPrototype.sfixed64 = read_sfixed64_number;\r\n }\r\n}\r\n\r\nReader._configure = configure;\r\n\r\nconfigure();\r\n","\"use strict\";\r\n\r\nmodule.exports = LongBits;\r\n\r\nvar util = require(8);\r\n\r\n/**\r\n * Any compatible Long instance.\r\n * @typedef Long\r\n * @type {Object}\r\n * @property {number} low Low bits\r\n * @property {number} high High bits\r\n * @property {boolean} unsigned Whether unsigned or not\r\n */\r\n\r\n/**\r\n * Constructs new long bits.\r\n * @classdesc Helper class for working with the low and high bits of a 64 bit value.\r\n * @memberof util\r\n * @constructor\r\n * @param {number} lo Low bits\r\n * @param {number} hi High bits\r\n */\r\nfunction LongBits(lo, hi) { // make sure to always call this with unsigned 32bits for proper optimization\r\n\r\n /**\r\n * Low bits.\r\n * @type {number}\r\n */\r\n this.lo = lo;\r\n\r\n /**\r\n * High bits.\r\n * @type {number}\r\n */\r\n this.hi = hi;\r\n}\r\n\r\n/** @alias util.LongBits.prototype */\r\nvar LongBitsPrototype = LongBits.prototype;\r\n\r\n/**\r\n * Zero bits.\r\n * @memberof util.LongBits\r\n * @type {util.LongBits}\r\n */\r\nvar zero = LongBits.zero = new LongBits(0, 0);\r\n\r\nzero.toNumber = function() { return 0; };\r\nzero.zzEncode = zero.zzDecode = function() { return this; };\r\nzero.length = function() { return 1; };\r\n\r\n/**\r\n * Constructs new long bits from the specified number.\r\n * @param {number} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.fromNumber = function fromNumber(value) {\r\n if (value === 0)\r\n return zero;\r\n var sign = value < 0;\r\n value = Math.abs(value);\r\n var lo = value >>> 0,\r\n hi = (value - lo) / 4294967296 >>> 0;\r\n if (sign) {\r\n hi = ~hi >>> 0;\r\n lo = ~lo >>> 0;\r\n if (++lo > 4294967295) {\r\n lo = 0;\r\n if (++hi > 4294967295)\r\n hi = 0;\r\n }\r\n }\r\n return new LongBits(lo, hi);\r\n};\r\n\r\n/**\r\n * Constructs new long bits from a number, long or string.\r\n * @param {Long|number|string} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.from = function from(value) {\r\n switch (typeof value) {\r\n case \"number\":\r\n return LongBits.fromNumber(value);\r\n case \"string\":\r\n if (util.Long)\r\n value = util.Long.fromString(value);\r\n // fallthrough\r\n else\r\n return LongBits.fromNumber(parseInt(value, 10));\r\n }\r\n return (value.low || value.high) && new LongBits(value.low >>> 0, value.high >>> 0) || zero;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a possibly unsafe JavaScript number.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {number} Possibly unsafe number\r\n */\r\nLongBitsPrototype.toNumber = function toNumber(unsigned) {\r\n if (!unsigned && this.hi >>> 31) {\r\n this.lo = ~this.lo + 1 >>> 0;\r\n this.hi = ~this.hi >>> 0;\r\n if (!this.lo)\r\n this.hi = this.hi + 1 >>> 0;\r\n return -(this.lo + this.hi * 4294967296);\r\n }\r\n return this.lo + this.hi * 4294967296;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a long.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long} Long\r\n */\r\nLongBitsPrototype.toLong = function toLong(unsigned) {\r\n return util.Long\r\n ? new util.Long(this.lo, this.hi, unsigned)\r\n : { low: this.lo, high: this.hi, unsigned: Boolean(unsigned) };\r\n};\r\n\r\nvar charCodeAt = String.prototype.charCodeAt;\r\n\r\n/**\r\n * Constructs new long bits from the specified 8 characters long hash.\r\n * @param {string} hash Hash\r\n * @returns {util.LongBits} Bits\r\n */\r\nLongBits.fromHash = function fromHash(hash) {\r\n return new LongBits(\r\n ( charCodeAt.call(hash, 0)\r\n | charCodeAt.call(hash, 1) << 8\r\n | charCodeAt.call(hash, 2) << 16\r\n | charCodeAt.call(hash, 3) << 24) >>> 0\r\n ,\r\n ( charCodeAt.call(hash, 4)\r\n | charCodeAt.call(hash, 5) << 8\r\n | charCodeAt.call(hash, 6) << 16\r\n | charCodeAt.call(hash, 7) << 24) >>> 0\r\n );\r\n};\r\n\r\n/**\r\n * Converts this long bits to a 8 characters long hash.\r\n * @returns {string} Hash\r\n */\r\nLongBitsPrototype.toHash = function toHash() {\r\n return String.fromCharCode(\r\n this.lo & 255,\r\n this.lo >>> 8 & 255,\r\n this.lo >>> 16 & 255,\r\n this.lo >>> 24 & 255,\r\n this.hi & 255,\r\n this.hi >>> 8 & 255,\r\n this.hi >>> 16 & 255,\r\n this.hi >>> 24 & 255\r\n );\r\n};\r\n\r\n/**\r\n * Zig-zag encodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzEncode = function zzEncode() {\r\n var mask = this.hi >> 31;\r\n this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0;\r\n this.lo = ( this.lo << 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Zig-zag decodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzDecode = function zzDecode() {\r\n var mask = -(this.lo & 1);\r\n this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0;\r\n this.hi = ( this.hi >>> 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Calculates the length of this longbits when encoded as a varint.\r\n * @returns {number} Length\r\n */\r\nLongBitsPrototype.length = function length() {\r\n var part0 = this.lo,\r\n part1 = (this.lo >>> 28 | this.hi << 4) >>> 0,\r\n part2 = this.hi >>> 24;\r\n if (part2 === 0) {\r\n if (part1 === 0)\r\n return part0 < 1 << 14\r\n ? part0 < 1 << 7 ? 1 : 2\r\n : part0 < 1 << 21 ? 3 : 4;\r\n return part1 < 1 << 14\r\n ? part1 < 1 << 7 ? 5 : 6\r\n : part1 < 1 << 21 ? 7 : 8;\r\n }\r\n return part2 < 1 << 7 ? 9 : 10;\r\n};\r\n","\"use strict\";\r\n\r\nvar util = exports;\r\n\r\nvar LongBits = util.LongBits = require(\"./longbits\");\r\n\r\nutil.base64 = require(\"@protobufjs/base64\");\r\nutil.utf8 = require(\"@protobufjs/utf8\");\r\nutil.pool = require(\"@protobufjs/pool\");\r\n\r\n/**\r\n * Whether running within node or not.\r\n * @memberof util\r\n * @type {boolean}\r\n */\r\nvar isNode = util.isNode = Boolean(global.process && global.process.versions && global.process.versions.node);\r\n\r\n/**\r\n * Optional buffer class to use.\r\n * If you assign any compatible buffer implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Buffer = null;\r\n\r\nif (isNode)\r\n try { util.Buffer = require(\"buffer\").Buffer; } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Optional Long class to use.\r\n * If you assign any compatible long implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Long = global.dcodeIO && global.dcodeIO.Long || null;\r\n\r\nif (!util.Long && isNode)\r\n try { util.Long = require(\"long\"); } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Tests if the specified value is an integer.\r\n * @function\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is an integer\r\n */\r\nutil.isInteger = Number.isInteger || function isInteger(value) {\r\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a string.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a string\r\n */\r\nutil.isString = function isString(value) {\r\n return typeof value === \"string\" || value instanceof String;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a non-null object.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a non-null object\r\n */\r\nutil.isObject = function isObject(value) {\r\n return Boolean(value && typeof value === \"object\");\r\n};\r\n\r\n/**\r\n * Converts a number or long to an 8 characters long hash string.\r\n * @param {Long|number} value Value to convert\r\n * @returns {string} Hash\r\n */\r\nutil.longToHash = function longToHash(value) {\r\n return value\r\n ? LongBits.from(value).toHash()\r\n : \"\\0\\0\\0\\0\\0\\0\\0\\0\";\r\n};\r\n\r\n/**\r\n * Converts an 8 characters long hash string to a long or number.\r\n * @param {string} hash Hash\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long|number} Original value\r\n */\r\nutil.longFromHash = function longFromHash(hash, unsigned) {\r\n var bits = LongBits.fromHash(hash);\r\n if (util.Long)\r\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\r\n return bits.toNumber(Boolean(unsigned));\r\n};\r\n\r\n/**\r\n * Tests if two possibly long values are not equal.\r\n * @param {number|Long} a First value\r\n * @param {number|Long} b Second value\r\n * @returns {boolean} `true` if not equal\r\n */\r\nutil.longNeq = function longNeq(a, b) {\r\n return typeof a === \"number\"\r\n ? typeof b === \"number\"\r\n ? a !== b\r\n : (a = LongBits.fromNumber(a)).lo !== b.low || a.hi !== b.high\r\n : typeof b === \"number\"\r\n ? (b = LongBits.fromNumber(b)).lo !== a.low || b.hi !== a.high\r\n : a.low !== b.low || a.high !== b.high;\r\n};\r\n\r\n/**\r\n * Defines the specified properties on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {Object} descriptors Property descriptors\r\n * @returns {undefined}\r\n */\r\nutil.props = function props(target, descriptors) {\r\n Object.keys(descriptors).forEach(function(key) {\r\n util.prop(target, key, descriptors[key]);\r\n });\r\n};\r\n\r\n/**\r\n * Defines the specified property on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {string} key Property name\r\n * @param {Object} descriptor Property descriptor\r\n * @returns {undefined}\r\n */\r\nutil.prop = function prop(target, key, descriptor) {\r\n var ie8 = !-[1,];\r\n var ucKey = key.substring(0, 1).toUpperCase() + key.substring(1);\r\n if (descriptor.get)\r\n target[\"get\" + ucKey] = descriptor.get;\r\n if (descriptor.set)\r\n target[\"set\" + ucKey] = ie8\r\n ? function(value) {\r\n descriptor.set.call(this, value);\r\n this[key] = value;\r\n }\r\n : descriptor.set;\r\n if (ie8) {\r\n if (descriptor.value !== undefined)\r\n target[key] = descriptor.value;\r\n } else\r\n Object.defineProperty(target, key, descriptor);\r\n};\r\n\r\n/**\r\n * An immuable empty array.\r\n * @memberof util\r\n * @type {Array.<*>}\r\n */\r\nutil.emptyArray = Object.freeze([]);\r\n\r\n/**\r\n * An immutable empty object.\r\n * @type {Object}\r\n */\r\nutil.emptyObject = Object.freeze({});\r\n","\"use strict\";\r\nmodule.exports = Writer;\r\n\r\nWriter.BufferWriter = BufferWriter;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n base64 = util.base64,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\n/**\r\n * Constructs a new writer operation instance.\r\n * @classdesc Scheduled writer operation.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {function(*, Uint8Array, number)} fn Function to call\r\n * @param {*} val Value to write\r\n * @param {number} len Value byte length\r\n * @private\r\n * @ignore\r\n */\r\nfunction Op(fn, val, len) {\r\n\r\n /**\r\n * Function to call.\r\n * @type {function(Uint8Array, number, *)}\r\n */\r\n this.fn = fn;\r\n\r\n /**\r\n * Value to write.\r\n * @type {*}\r\n */\r\n this.val = val;\r\n\r\n /**\r\n * Value byte length.\r\n * @type {number}\r\n */\r\n this.len = len;\r\n\r\n /**\r\n * Next operation.\r\n * @type {?Writer.Op}\r\n */\r\n this.next = null;\r\n}\r\n\r\nWriter.Op = Op;\r\n\r\nfunction noop() {} // eslint-disable-line no-empty-function\r\n\r\n/**\r\n * Constructs a new writer state instance.\r\n * @classdesc Copied writer state.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {Writer} writer Writer to copy state from\r\n * @param {State} next Next state entry\r\n * @private\r\n * @ignore\r\n */\r\nfunction State(writer, next) {\r\n\r\n /**\r\n * Current head.\r\n * @type {Writer.Op}\r\n */\r\n this.head = writer.head;\r\n\r\n /**\r\n * Current tail.\r\n * @type {Writer.Op}\r\n */\r\n this.tail = writer.tail;\r\n\r\n /**\r\n * Current buffer length.\r\n * @type {number}\r\n */\r\n this.len = writer.len;\r\n\r\n /**\r\n * Next state.\r\n * @type {?State}\r\n */\r\n this.next = next;\r\n}\r\n\r\nWriter.State = State;\r\n\r\n/**\r\n * Constructs a new writer instance.\r\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n */\r\nfunction Writer() {\r\n\r\n /**\r\n * Current length.\r\n * @type {number}\r\n */\r\n this.len = 0;\r\n\r\n /**\r\n * Operations head.\r\n * @type {Object}\r\n */\r\n this.head = new Op(noop, 0, 0);\r\n\r\n /**\r\n * Operations tail\r\n * @type {Object}\r\n */\r\n this.tail = this.head;\r\n\r\n /**\r\n * Linked forked states.\r\n * @type {?Object}\r\n */\r\n this.states = null;\r\n\r\n // When a value is written, the writer calculates its byte length and puts it into a linked\r\n // list of operations to perform when finish() is called. This both allows us to allocate\r\n // buffers of the exact required size and reduces the amount of work we have to do compared\r\n // to first calculating over objects and then encoding over objects. In our case, the encoding\r\n // part is just a linked list walk calling linked operations with already prepared values.\r\n}\r\n\r\n/**\r\n * Creates a new writer.\r\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\r\n */\r\nWriter.create = function create() {\r\n return new (util.Buffer ? BufferWriter : Writer);\r\n};\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nWriter.alloc = function alloc(size) {\r\n return new ArrayImpl(size);\r\n};\r\n\r\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\r\nif (ArrayImpl !== Array)\r\n Writer.alloc = util.pool(Writer.alloc, ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice);\r\n\r\n/** @alias Writer.prototype */\r\nvar WriterPrototype = Writer.prototype;\r\n\r\n/**\r\n * Pushes a new operation to the queue.\r\n * @param {function(Uint8Array, number, *)} fn Function to call\r\n * @param {number} len Value byte length\r\n * @param {number} val Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.push = function push(fn, len, val) {\r\n var op = new Op(fn, val, len);\r\n this.tail.next = op;\r\n this.tail = op;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\nfunction writeByte(val, buf, pos) {\r\n buf[pos] = val & 255;\r\n}\r\n\r\n/**\r\n * Writes a tag.\r\n * @param {number} id Field id\r\n * @param {number} wireType Wire type\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.tag = function write_tag(id, wireType) {\r\n // deprecated internally, but remains for completeness\r\n return this.uint32(id << 3 | wireType & 7);\r\n};\r\n\r\nfunction writeVarint32(val, buf, pos) {\r\n while (val > 127) {\r\n buf[pos++] = val & 127 | 128;\r\n val >>>= 7;\r\n }\r\n buf[pos] = val;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 32 bit value as a varint.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.uint32 = function write_uint32(value) {\r\n value >>>= 0;\r\n return value < 128\r\n ? this.push(writeByte, 1, value)\r\n : this.push(writeVarint32,\r\n value < 16384 ? 2\r\n : value < 2097152 ? 3\r\n : value < 268435456 ? 4\r\n : 5\r\n , value);\r\n};\r\n\r\n/**\r\n * Writes a signed 32 bit value as a varint.\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.int32 = function write_int32(value) {\r\n return value < 0\r\n ? this.push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\r\n : this.uint32(value);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as a varint, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sint32 = function write_sint32(value) {\r\n return this.uint32(value << 1 ^ value >> 31);\r\n};\r\n\r\nfunction writeVarint64(val, buf, pos) {\r\n // tends to deoptimize. stays optimized when using bits directly.\r\n while (val.hi) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\r\n val.hi >>>= 7;\r\n }\r\n while (val.lo > 127) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = val.lo >>> 7;\r\n }\r\n buf[pos++] = val.lo;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 64 bit value as a varint.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.uint64 = function write_uint64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint.\r\n * @function\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.int64 = WriterPrototype.uint64;\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sint64 = function write_sint64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a boolish value as a varint.\r\n * @param {boolean} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bool = function write_bool(value) {\r\n return this.push(writeByte, 1, value ? 1 : 0);\r\n};\r\n\r\nfunction writeFixed32(val, buf, pos) {\r\n buf[pos++] = val & 255;\r\n buf[pos++] = val >>> 8 & 255;\r\n buf[pos++] = val >>> 16 & 255;\r\n buf[pos ] = val >>> 24;\r\n}\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fixed32 = function write_fixed32(value) {\r\n return this.push(writeFixed32, 4, value >>> 0);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sfixed32 = function write_sfixed32(value) {\r\n return this.push(writeFixed32, 4, value << 1 ^ value >> 31);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.fixed64 = function write_fixed64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sfixed64 = function write_sfixed64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\nvar writeFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function writeFloat_f32(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos ] = f8b[3];\r\n }\r\n : function writeFloat_f32_le(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeFloat_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Writes a float (32 bit).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.float = function write_float(value) {\r\n return this.push(writeFloat, 4, value);\r\n};\r\n\r\nvar writeDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function writeDouble_f64(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[6];\r\n buf[pos ] = f8b[7];\r\n }\r\n : function writeDouble_f64_le(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[7];\r\n buf[pos++] = f8b[6];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeDouble_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Writes a double (64 bit float).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.double = function write_double(value) {\r\n return this.push(writeDouble, 8, value);\r\n};\r\n\r\nvar writeBytes = ArrayImpl.prototype.set\r\n ? function writeBytes_set(val, buf, pos) {\r\n buf.set(val, pos);\r\n }\r\n : function writeBytes_for(val, buf, pos) {\r\n for (var i = 0; i < val.length; ++i)\r\n buf[pos + i] = val[i];\r\n };\r\n\r\n/**\r\n * Writes a sequence of bytes.\r\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bytes = function write_bytes(value) {\r\n var len = value.length >>> 0;\r\n if (typeof value === \"string\" && len) {\r\n var buf = Writer.alloc(len = base64.length(value));\r\n base64.decode(value, buf, 0);\r\n value = buf;\r\n }\r\n return len\r\n ? this.uint32(len).push(writeBytes, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Writes a string.\r\n * @param {string} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.string = function write_string(value) {\r\n var len = utf8.length(value);\r\n return len\r\n ? this.uint32(len).push(utf8.write, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Forks this writer's state by pushing it to a stack.\r\n * Calling {@link Writer#}, {@link Writer#reset} or {@link Writer#finish} resets the writer to the previous state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fork = function fork() {\r\n this.states = new State(this, this.states);\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance to the last state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.reset = function reset() {\r\n if (this.states) {\r\n this.head = this.states.head;\r\n this.tail = this.states.tail;\r\n this.len = this.states.len;\r\n this.states = this.states.next;\r\n } else {\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\r\n * @param {number} [id] Id with wire type 2 to prepend as a tag where applicable\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.ldelim = function ldelim(id) {\r\n var head = this.head,\r\n tail = this.tail,\r\n len = this.len;\r\n this.reset();\r\n if (id !== undefined)\r\n this.uint32(id << 3 | 2);\r\n this.uint32(len);\r\n this.tail.next = head.next; // skip noop\r\n this.tail = tail;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of write operations and frees all resources.\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nWriterPrototype.finish = function finish() {\r\n var head = this.head.next, // skip noop\r\n buf = this.constructor.alloc(this.len);\r\n this.reset();\r\n var pos = 0;\r\n while (head) {\r\n head.fn(head.val, buf, pos);\r\n pos += head.len;\r\n head = head.next;\r\n }\r\n return buf;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer writer instance.\r\n * @classdesc Wire format writer using node buffers.\r\n * @exports BufferWriter\r\n * @extends Writer\r\n * @constructor\r\n */\r\nfunction BufferWriter() {\r\n Writer.call(this);\r\n}\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nBufferWriter.alloc = function alloc_buffer(size) {\r\n BufferWriter.alloc = util.Buffer.allocUnsafe\r\n ? util.Buffer.allocUnsafe\r\n : function allocUnsafeNew(size) { return new util.Buffer(size); };\r\n return BufferWriter.alloc(size);\r\n};\r\n\r\n/** @alias BufferWriter.prototype */\r\nvar BufferWriterPrototype = BufferWriter.prototype = Object.create(Writer.prototype);\r\nBufferWriterPrototype.constructor = BufferWriter;\r\n\r\nfunction writeFloatBuffer(val, buf, pos) {\r\n buf.writeFloatLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.float = function write_float_buffer(value) {\r\n return this.push(writeFloatBuffer, 4, value);\r\n};\r\n\r\nfunction writeDoubleBuffer(val, buf, pos) {\r\n buf.writeDoubleLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.double = function write_double_buffer(value) {\r\n return this.push(writeDoubleBuffer, 8, value);\r\n};\r\n\r\nfunction writeBytesBuffer(val, buf, pos) {\r\n if (val.length)\r\n val.copy(buf, pos, 0, val.length);\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.bytes = function write_bytes_buffer(value) {\r\n if (typeof value === \"string\")\r\n value = util.Buffer.from && util.Buffer.from(value, \"base64\") || new util.Buffer(value, \"base64\");\r\n var len = value.length >>> 0;\r\n return len\r\n ? this.uint32(len).push(writeBytesBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\nvar writeStringBuffer = (function() { // eslint-disable-line wrap-iife\r\n return util.Buffer && util.Buffer.prototype.utf8Write // around forever, but not present in browser buffer\r\n ? function writeString_buffer_utf8Write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.utf8Write(val, pos);\r\n }\r\n : function writeString_buffer_write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.write(val, pos);\r\n };\r\n // Note that the plain JS encoder is faster for short strings, probably because of redundant assertions.\r\n // For a raw utf8Write, the breaking point is about 20 characters, for write it is around 40 characters.\r\n // Unfortunately, this does not translate 1:1 to real use cases, hence the common \"good enough\" limit of 40.\r\n})();\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.string = function write_string_buffer(value) {\r\n var len = value.length < 40\r\n ? utf8.length(value)\r\n : util.Buffer.byteLength(value);\r\n return len\r\n ? this.uint32(len).push(writeStringBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n"],"sourceRoot":"."} \ No newline at end of file diff --git a/dist/runtime/protobuf.min.js b/dist/runtime/protobuf.min.js index 2f4b5c996..7ca27ab8c 100644 --- a/dist/runtime/protobuf.min.js +++ b/dist/runtime/protobuf.min.js @@ -1,8 +1,8 @@ /*! * protobuf.js v6.1.1 (c) 2016 Daniel Wirtz - * Compiled Wed, 14 Dec 2016 12:23:48 UTC + * Compiled Wed, 14 Dec 2016 12:30:31 UTC * Licensed under the Apache License, Version 2.0 * see: https://github.com/dcodeIO/protobuf.js for details */ -!function t(n,i,r){function e(s,u){if(!i[s]){if(!n[s]){var h="function"==typeof require&&require;if(!u&&h)return h(s,!0);if(o)return o(s,!0);var f=new Error("Cannot find module '"+s+"'");throw f.code="MODULE_NOT_FOUND",f}var a=i[s]={exports:{}};n[s][0].call(a.exports,function(t){var i=n[s][1][t];return e(i?i:t)},a,a.exports,t,n,i,r)}return i[s].exports}for(var o="function"==typeof require&&require,s=0;s>1,a=-7,c=i?0:e-1,l=i?1:-1,p=t[n+c];for(c+=l,o=p&(1<<-a)-1,p>>=-a,a+=u;a>0;o=256*o+t[n+c],c+=l,a-=8);for(s=o&(1<<-a)-1,o>>=-a,a+=r;a>0;s=256*s+t[n+c],c+=l,a-=8);if(0===o)o=1-f;else{if(o===h)return s?NaN:(p?-1:1)*(1/0);s+=Math.pow(2,r),o-=f}return(p?-1:1)*s*Math.pow(2,o-r)},i.write=function(t,n,i,r,e,o){var s,u,h,f=8*o-e-1,a=(1<>1,l=23===e?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?o-1:0,d=r?-1:1,b=n<0||0===n&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(u=isNaN(n)?1:0,s=a):(s=Math.floor(Math.log(n)/Math.LN2),n*(h=Math.pow(2,-s))<1&&(s--,h*=2),n+=s+c>=1?l/h:l*Math.pow(2,1-c),n*h>=2&&(s++,h/=2),s+c>=a?(u=0,s=a):s+c>=1?(u=(n*h-1)*Math.pow(2,e),s+=c):(u=n*Math.pow(2,c-1)*Math.pow(2,e),s=0));e>=8;t[i+p]=255&u,p+=d,u/=256,e-=8);for(s=s<0;t[i+p]=255&s,p+=d,s/=256,f-=8);t[i+p-d]|=128*b}},{}],2:[function(t,n,i){"use strict";var r=i;r.length=function(t){var n=t.length;if(!n)return 0;for(var i=0;--n%4>1&&"="===t.charAt(n);)++i;return Math.ceil(3*t.length)/4-i};for(var e=[],o=[],s=0;s<64;)o[e[s]=s<26?s+65:s<52?s+71:s<62?s-4:s-59|43]=s++;r.encode=function(t,n,i){for(var r,o=[],s=0,u=0;n>2],r=(3&h)<<4,u=1;break;case 1:o[s++]=e[r|h>>4],r=(15&h)<<2,u=2;break;case 2:o[s++]=e[r|h>>6],o[s++]=e[63&h],u=0}}return u&&(o[s++]=e[r],o[s]=61,1===u&&(o[s+1]=61)),String.fromCharCode.apply(String,o)};var u="invalid encoding";r.decode=function(t,n,i){for(var r,e=i,s=0,h=0;h1)break;if(void 0===(f=o[f]))throw Error(u);switch(s){case 0:r=f,s=1;break;case 1:n[i++]=r<<2|(48&f)>>4,r=f,s=2;break;case 2:n[i++]=(15&r)<<4|(60&f)>>2,r=f,s=3;break;case 3:n[i++]=(3&r)<<6|f,s=0}}if(1===s)throw Error(u);return i-e}},{}],3:[function(t,n,i){"use strict";function r(t,n,i){var r=i||8192,e=r>>>1,o=null,s=r;return function(i){if(i>e)return t(i);s+i>r&&(o=t(r),s=0);var u=n.call(o,s,s+=i);return 7&s&&(s=(7|s)+1),u}}n.exports=r},{}],4:[function(t,n,i){"use strict";var r=i;r.length=function(t){for(var n=0,i=0,r=0;r191&&e<224?o[s++]=(31&e)<<6|63&t[n++]:e>239&&e<365?(e=((7&e)<<18|(63&t[n++])<<12|(63&t[n++])<<6|63&t[n++])-65536,o[s++]=55296+(e>>10),o[s++]=56320+(1023&e)):o[s++]=(15&e)<<12|(63&t[n++])<<6|63&t[n++];return String.fromCharCode.apply(String,o.slice(0,s))},r.write=function(t,n,i){for(var r,e,o=i,s=0;s>6|192,n[i++]=63&r|128):55296===(64512&r)&&56320===(64512&(e=t.charCodeAt(s+1)))?(r=65536+((1023&r)<<10)+(1023&e),++s,n[i++]=r>>18|240,n[i++]=r>>12&63|128,n[i++]=r>>6&63|128,n[i++]=63&r|128):(n[i++]=r>>12|224,n[i++]=r>>6&63|128,n[i++]=63&r|128);return i-o}},{}],5:[function(t,n,i){function r(){s.a()}var e=i,o=e.Writer=t(9);e.BufferWriter=o.BufferWriter;var s=e.Reader=t(6);e.BufferReader=s.BufferReader,e.util=t(8),e.configure=r,"function"==typeof define&&define.amd&&define(["long"],function(t){return t&&(e.util.Long=t,r()),e})},{6:6,8:8,9:9}],6:[function(t,n,i){"use strict";function r(t,n){return RangeError("index out of range: "+t.pos+" + "+(n||1)+" > "+t.len)}function e(t){this.buf=t,this.pos=0,this.len=t.length}function o(){var t=0,n=0,i=0,e=0;if(this.len-this.pos>9){for(i=0;i<4;++i)if(e=this.buf[this.pos++],t|=(127&e)<<7*i,e<128)return new L(t>>>0,n>>>0);if(e=this.buf[this.pos++],t|=(127&e)<<28,n|=(127&e)>>4,e<128)return new L(t>>>0,n>>>0);for(i=0;i<5;++i)if(e=this.buf[this.pos++],n|=(127&e)<<7*i+3,e<128)return new L(t>>>0,n>>>0)}else{for(i=0;i<4;++i){if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],t|=(127&e)<<7*i,e<128)return new L(t>>>0,n>>>0)}if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],t|=(127&e)<<28,n|=(127&e)>>4,e<128)return new L(t>>>0,n>>>0);for(i=0;i<5;++i){if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],n|=(127&e)<<7*i+3,e<128)return new L(t>>>0,n>>>0)}}throw Error("invalid varint encoding")}function s(){return o.call(this).toLong()}function u(){return o.call(this).toNumber()}function h(){return o.call(this).toLong(!0)}function f(){return o.call(this).toNumber(!0)}function a(){return o.call(this).zzDecode().toLong()}function c(){return o.call(this).zzDecode().toNumber()}function l(t,n){return t[n-4]|t[n-3]<<8|t[n-2]<<16|t[n-1]<<24}function p(){if(this.pos+8>this.len)throw r(this,8);return new L(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}function d(){return p.call(this).toLong(!0)}function b(){return p.call(this).toNumber(!0)}function g(){return p.call(this).zzDecode().toLong()}function v(){return p.call(this).zzDecode().toNumber()}function w(t){M&&M(),e.call(this,t)}function y(t,n,i){return t.utf8Slice(n,i)}function m(t,n,i){return t.toString("utf8",n,i)}function A(){B.Long?(k.int64=s,k.uint64=h,k.sint64=a,k.fixed64=d,k.sfixed64=g):(k.int64=u,k.uint64=f,k.sint64=c,k.fixed64=b,k.sfixed64=v)}n.exports=e,e.BufferReader=w;var B=t(8),x=t(1),L=B.LongBits,N=B.utf8,z="undefined"!=typeof Uint8Array?Uint8Array:Array;e.create=function(t){return new(B.Buffer?w:e)(t)};var k=e.prototype;k.b=z.prototype.subarray||z.prototype.slice,k.tag=function(){var t=this.int32();return{id:t>>>3,wireType:7&t}},k.int32=function(){var t=this.buf[this.pos++],n=127&t;if(t>127&&(t=this.buf[this.pos++],n|=(127&t)<<7,t>127&&(t=this.buf[this.pos++],n|=(127&t)<<14,t>127&&(t=this.buf[this.pos++],n|=(127&t)<<21,t>127&&(t=this.buf[this.pos++],n|=t<<28,t>127&&(this.pos+=5))))),this.pos>this.len)throw this.pos=this.len,r(this);return n},k.uint32=function(){return this.int32()>>>0},k.sint32=function(){var t=this.int32();return t>>>1^-(1&t)},k.bool=function(){return 0!==this.int32()},k.fixed32=function(){if(this.pos+4>this.len)throw r(this,4);return l(this.buf,this.pos+=4)},k.sfixed32=function(){var t=this.fixed32();return t>>>1^-(1&t)};var E="undefined"!=typeof Float32Array?function(){var t=new Float32Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[3]?function(i,r){return n[0]=i[r],n[1]=i[r+1],n[2]=i[r+2],n[3]=i[r+3],t[0]}:function(i,r){return n[3]=i[r],n[2]=i[r+1],n[1]=i[r+2],n[0]=i[r+3],t[0]}}():function(t,n){return x.read(t,n,!1,23,4)};k.float=function(){if(this.pos+4>this.len)throw r(this,4);var t=E(this.buf,this.pos);return this.pos+=4,t};var F="undefined"!=typeof Float64Array?function(){var t=new Float64Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[7]?function(i,r){return n[0]=i[r],n[1]=i[r+1],n[2]=i[r+2],n[3]=i[r+3],n[4]=i[r+4],n[5]=i[r+5],n[6]=i[r+6],n[7]=i[r+7],t[0]}:function(i,r){return n[7]=i[r],n[6]=i[r+1],n[5]=i[r+2],n[4]=i[r+3],n[3]=i[r+4],n[2]=i[r+5],n[1]=i[r+6],n[0]=i[r+7],t[0]}}():function(t,n){return x.read(t,n,!1,52,8)};k.double=function(){if(this.pos+8>this.len)throw r(this,4);var t=F(this.buf,this.pos);return this.pos+=8,t},k.bytes=function(){var t=this.int32()>>>0,n=this.pos,i=this.pos+t;if(i>this.len)throw r(this,t);return this.pos+=t,n===i?new this.buf.constructor(0):this.b.call(this.buf,n,i)},k.string=function(){var t=this.bytes();return N.read(t,0,t.length)},k.skip=function(t){if(void 0===t){do if(this.pos>=this.len)throw r(this);while(128&this.buf[this.pos++])}else{if(this.pos+t>this.len)throw r(this,t);this.pos+=t}return this},k.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;;){if(t=7&this.int32(),4===t)break;this.skipType(t)}break;case 5:this.skip(4);break;default:throw Error("invalid wire type: "+t)}return this},k.reset=function(t){return t?(this.buf=t,this.len=t.length):(this.buf=null,this.len=0),this.pos=0,this},k.finish=function(t){var n=this.pos?this.b.call(this.buf,this.pos):this.buf;return this.reset(t),n};var M=function(){var t=B.Buffer;if(!t)throw Error("Buffer is not supported");C.b=t.prototype.slice,O=t.prototype.utf8Slice?y:m,M=!1},C=w.prototype=Object.create(e.prototype);C.constructor=w,"undefined"==typeof Float32Array&&(C.float=function(){if(this.pos+4>this.len)throw r(this,4);var t=this.buf.readFloatLE(this.pos,!0);return this.pos+=4,t}),"undefined"==typeof Float64Array&&(C.double=function(){if(this.pos+8>this.len)throw r(this,8);var t=this.buf.readDoubleLE(this.pos,!0);return this.pos+=8,t});var O;C.string=function(){var t=this.int32()>>>0,n=this.pos,i=this.pos+t;if(i>this.len)throw r(this,t);return this.pos+=t,O(this.buf,n,i)},C.finish=function(t){var n=this.pos?this.buf.slice(this.pos):this.buf;return this.reset(t),n},e.a=A,A()},{1:1,8:8}],7:[function(t,n,i){"use strict";function r(t,n){this.lo=t,this.hi=n}n.exports=r;var e=t(8),o=r.prototype,s=r.zero=new r(0,0);s.toNumber=function(){return 0},s.zzEncode=s.zzDecode=function(){return this},s.length=function(){return 1},r.fromNumber=function(t){if(0===t)return s;var n=t<0;t=Math.abs(t);var i=t>>>0,e=(t-i)/4294967296>>>0;return n&&(e=~e>>>0,i=~i>>>0,++i>4294967295&&(i=0,++e>4294967295&&(e=0))),new r(i,e)},r.from=function(t){switch(typeof t){case"number":return r.fromNumber(t);case"string":if(!e.Long)return r.fromNumber(parseInt(t,10));t=e.Long.fromString(t)}return(t.low||t.high)&&new r(t.low>>>0,t.high>>>0)||s},o.toNumber=function(t){return!t&&this.hi>>>31?(this.lo=~this.lo+1>>>0,this.hi=~this.hi>>>0,this.lo||(this.hi=this.hi+1>>>0),-(this.lo+4294967296*this.hi)):this.lo+4294967296*this.hi},o.toLong=function(t){return e.Long?new e.Long(this.lo,this.hi,t):{low:this.lo,high:this.hi,unsigned:Boolean(t)}};var u=String.prototype.charCodeAt;r.fromHash=function(t){return new r((u.call(t,0)|u.call(t,1)<<8|u.call(t,2)<<16|u.call(t,3)<<24)>>>0,(u.call(t,4)|u.call(t,5)<<8|u.call(t,6)<<16|u.call(t,7)<<24)>>>0)},o.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24&255,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24&255)},o.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},o.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},o.length=function(){var t=this.lo,n=(this.lo>>>28|this.hi<<4)>>>0,i=this.hi>>>24;return 0===i?0===n?t<16384?t<128?1:2:t<1<<21?3:4:n<16384?n<128?5:6:n<1<<21?7:8:i<128?9:10}},{8:8}],8:[function(t,n,i){(function(n){"use strict";var r=i,e=r.LongBits=t(7);r.base64=t(2),r.utf8=t(4),r.pool=t(3);var o=r.isNode=Boolean(n.process&&n.process.versions&&n.process.versions.node);if(r.Buffer=null,o)try{r.Buffer=t("buffer").Buffer}catch(t){}if(r.Long=n.dcodeIO&&n.dcodeIO.Long||null,!r.Long&&o)try{r.Long=t("long")}catch(t){}r.isInteger=Number.isInteger||function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t},r.isString=function(t){return"string"==typeof t||t instanceof String},r.isObject=function(t){return Boolean(t&&"object"==typeof t)},r.longToHash=function(t){return t?e.from(t).toHash():"\0\0\0\0\0\0\0\0"},r.longFromHash=function(t,n){var i=e.fromHash(t);return r.Long?r.Long.fromBits(i.lo,i.hi,n):i.toNumber(Boolean(n))},r.longNeq=function(t,n){return"number"==typeof t?"number"==typeof n?t!==n:(t=e.fromNumber(t)).lo!==n.low||t.hi!==n.high:"number"==typeof n?(n=e.fromNumber(n)).lo!==t.low||n.hi!==t.high:t.low!==n.low||t.high!==n.high},r.props=function(t,n){Object.keys(n).forEach(function(i){r.prop(t,i,n[i])})},r.prop=function(t,n,i){var r=!-[1],e=n.substring(0,1).toUpperCase()+n.substring(1);i.get&&(t["get"+e]=i.get),i.set&&(t["set"+e]=r?function(t){i.set.call(this,t),this[n]=t}:i.set),r?void 0!==i.value&&(t[n]=i.value):Object.defineProperty(t,n,i)},r.emptyArray=Object.freeze([]),r.emptyObject=Object.freeze({})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2,3:3,4:4,7:7,buffer:"buffer",long:"long"}],9:[function(t,n,i){"use strict";function r(t,n,i){this.fn=t,this.val=n,this.len=i,this.next=null}function e(){}function o(t,n){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=n}function s(){this.len=0,this.head=new r(e,0,0),this.tail=this.head,this.states=null}function u(t,n,i){n[i]=255&t}function h(t,n,i){for(;t>127;)n[i++]=127&t|128,t>>>=7;n[i]=t}function f(t,n,i){for(;t.hi;)n[i++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)n[i++]=127&t.lo|128,t.lo=t.lo>>>7;n[i++]=t.lo}function a(t,n,i){n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i]=t>>>24}function c(){s.call(this)}function l(t,n,i){n.writeFloatLE(t,i,!0)}function p(t,n,i){n.writeDoubleLE(t,i,!0)}function d(t,n,i){t.length&&t.copy(n,i,0,t.length)}n.exports=s,s.BufferWriter=c;var b=t(8),g=t(1),v=b.LongBits,w=b.base64,y=b.utf8,m="undefined"!=typeof Uint8Array?Uint8Array:Array;s.Op=r,s.State=o,s.create=function(){return new(b.Buffer?c:s)},s.alloc=function(t){return new m(t)},m!==Array&&(s.alloc=b.pool(s.alloc,m.prototype.subarray||m.prototype.slice));var A=s.prototype;A.push=function(t,n,i){var e=new r(t,i,n);return this.tail.next=e,this.tail=e,this.len+=n,this},A.tag=function(t,n){return this.uint32(t<<3|7&n)},A.uint32=function(t){return t>>>=0,t<128?this.push(u,1,t):this.push(h,t<16384?2:t<2097152?3:t<268435456?4:5,t)},A.int32=function(t){return t<0?this.push(f,10,v.fromNumber(t)):this.uint32(t)},A.sint32=function(t){return this.uint32(t<<1^t>>31)},A.uint64=function(t){var n=v.from(t);return this.push(f,n.length(),n)},A.int64=A.uint64,A.sint64=function(t){var n=v.from(t).zzEncode();return this.push(f,n.length(),n)},A.bool=function(t){return this.push(u,1,t?1:0)},A.fixed32=function(t){return this.push(a,4,t>>>0)},A.sfixed32=function(t){return this.push(a,4,t<<1^t>>31)},A.fixed64=function(t){var n=v.from(t);return this.push(a,4,n.lo).push(a,4,n.hi)},A.sfixed64=function(t){var n=v.from(t).zzEncode();return this.push(a,4,n.lo).push(a,4,n.hi)};var B="undefined"!=typeof Float32Array?function(){var t=new Float32Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[3]?function(i,r,e){t[0]=i,r[e++]=n[0],r[e++]=n[1],r[e++]=n[2],r[e]=n[3]}:function(i,r,e){t[0]=i,r[e++]=n[3],r[e++]=n[2],r[e++]=n[1],r[e]=n[0]}}():function(t,n,i){g.write(n,t,i,!1,23,4)};A.float=function(t){return this.push(B,4,t)};var x="undefined"!=typeof Float64Array?function(){var t=new Float64Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[7]?function(i,r,e){t[0]=i,r[e++]=n[0],r[e++]=n[1],r[e++]=n[2],r[e++]=n[3],r[e++]=n[4],r[e++]=n[5],r[e++]=n[6],r[e]=n[7]}:function(i,r,e){t[0]=i,r[e++]=n[7],r[e++]=n[6],r[e++]=n[5],r[e++]=n[4],r[e++]=n[3],r[e++]=n[2],r[e++]=n[1],r[e]=n[0]}}():function(t,n,i){g.write(n,t,i,!1,52,8)};A.double=function(t){return this.push(x,8,t)};var L=m.prototype.set?function(t,n,i){n.set(t,i)}:function(t,n,i){for(var r=0;r>>0;if("string"==typeof t&&n){var i=s.alloc(n=w.length(t));w.decode(t,i,0),t=i}return n?this.uint32(n).push(L,n,t):this.push(u,1,0)},A.string=function(t){var n=y.length(t);return n?this.uint32(n).push(y.write,n,t):this.push(u,1,0)},A.fork=function(){return this.states=new o(this,this.states),this.head=this.tail=new r(e,0,0),this.len=0,this},A.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new r(e,0,0),this.len=0),this},A.ldelim=function(t){var n=this.head,i=this.tail,r=this.len;return this.reset(),void 0!==t&&this.uint32(t<<3|2),this.uint32(r),this.tail.next=n.next,this.tail=i,this.len+=r,this},A.finish=function(){var t=this.head.next,n=this.constructor.alloc(this.len);this.reset();for(var i=0;t;)t.fn(t.val,n,i),i+=t.len,t=t.next;return n},c.alloc=function(t){return c.alloc=b.Buffer.allocUnsafe?b.Buffer.allocUnsafe:function(t){return new b.Buffer(t)},c.alloc(t)};var N=c.prototype=Object.create(s.prototype);N.constructor=c,"undefined"==typeof Float32Array&&(N.float=function(t){return this.push(l,4,t)}),"undefined"==typeof Float64Array&&(N.double=function(t){return this.push(p,8,t)}),N.bytes=function(t){"string"==typeof t&&(t=b.Buffer.from&&b.Buffer.from(t,"base64")||new b.Buffer(t,"base64"));var n=t.length>>>0;return n?this.uint32(n).push(d,n,t):this.push(u,1,0)};var z=function(){return b.Buffer&&b.Buffer.prototype.utf8Write?function(t,n,i){t.length<40?y.write(t,n,i):n.utf8Write(t,i)}:function(t,n,i){t.length<40?y.write(t,n,i):n.write(t,i)}}();N.string=function(t){var n=t.length<40?y.length(t):b.Buffer.byteLength(t);return n?this.uint32(n).push(z,n,t):this.push(u,1,0)}},{1:1,8:8}]},{},[5]); +!function t(n,i,r){function e(s,u){if(!i[s]){if(!n[s]){var h="function"==typeof require&&require;if(!u&&h)return h(s,!0);if(o)return o(s,!0);var f=new Error("Cannot find module '"+s+"'");throw f.code="MODULE_NOT_FOUND",f}var a=i[s]={exports:{}};n[s][0].call(a.exports,function(t){var i=n[s][1][t];return e(i?i:t)},a,a.exports,t,n,i,r)}return i[s].exports}for(var o="function"==typeof require&&require,s=0;s>1,a=-7,c=i?0:e-1,l=i?1:-1,p=t[n+c];for(c+=l,o=p&(1<<-a)-1,p>>=-a,a+=u;a>0;o=256*o+t[n+c],c+=l,a-=8);for(s=o&(1<<-a)-1,o>>=-a,a+=r;a>0;s=256*s+t[n+c],c+=l,a-=8);if(0===o)o=1-f;else{if(o===h)return s?NaN:(p?-1:1)*(1/0);s+=Math.pow(2,r),o-=f}return(p?-1:1)*s*Math.pow(2,o-r)},i.write=function(t,n,i,r,e,o){var s,u,h,f=8*o-e-1,a=(1<>1,l=23===e?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?o-1:0,d=r?-1:1,b=n<0||0===n&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(u=isNaN(n)?1:0,s=a):(s=Math.floor(Math.log(n)/Math.LN2),n*(h=Math.pow(2,-s))<1&&(s--,h*=2),n+=s+c>=1?l/h:l*Math.pow(2,1-c),n*h>=2&&(s++,h/=2),s+c>=a?(u=0,s=a):s+c>=1?(u=(n*h-1)*Math.pow(2,e),s+=c):(u=n*Math.pow(2,c-1)*Math.pow(2,e),s=0));e>=8;t[i+p]=255&u,p+=d,u/=256,e-=8);for(s=s<0;t[i+p]=255&s,p+=d,s/=256,f-=8);t[i+p-d]|=128*b}},{}],2:[function(t,n,i){"use strict";var r=i;r.length=function(t){var n=t.length;if(!n)return 0;for(var i=0;--n%4>1&&"="===t.charAt(n);)++i;return Math.ceil(3*t.length)/4-i};for(var e=[],o=[],s=0;s<64;)o[e[s]=s<26?s+65:s<52?s+71:s<62?s-4:s-59|43]=s++;r.encode=function(t,n,i){for(var r,o=[],s=0,u=0;n>2],r=(3&h)<<4,u=1;break;case 1:o[s++]=e[r|h>>4],r=(15&h)<<2,u=2;break;case 2:o[s++]=e[r|h>>6],o[s++]=e[63&h],u=0}}return u&&(o[s++]=e[r],o[s]=61,1===u&&(o[s+1]=61)),String.fromCharCode.apply(String,o)};var u="invalid encoding";r.decode=function(t,n,i){for(var r,e=i,s=0,h=0;h1)break;if(void 0===(f=o[f]))throw Error(u);switch(s){case 0:r=f,s=1;break;case 1:n[i++]=r<<2|(48&f)>>4,r=f,s=2;break;case 2:n[i++]=(15&r)<<4|(60&f)>>2,r=f,s=3;break;case 3:n[i++]=(3&r)<<6|f,s=0}}if(1===s)throw Error(u);return i-e}},{}],3:[function(t,n,i){"use strict";function r(t,n,i){var r=i||8192,e=r>>>1,o=null,s=r;return function(i){if(i>e)return t(i);s+i>r&&(o=t(r),s=0);var u=n.call(o,s,s+=i);return 7&s&&(s=(7|s)+1),u}}n.exports=r},{}],4:[function(t,n,i){"use strict";var r=i;r.length=function(t){for(var n=0,i=0,r=0;r191&&e<224?o[s++]=(31&e)<<6|63&t[n++]:e>239&&e<365?(e=((7&e)<<18|(63&t[n++])<<12|(63&t[n++])<<6|63&t[n++])-65536,o[s++]=55296+(e>>10),o[s++]=56320+(1023&e)):o[s++]=(15&e)<<12|(63&t[n++])<<6|63&t[n++];return String.fromCharCode.apply(String,o.slice(0,s))},r.write=function(t,n,i){for(var r,e,o=i,s=0;s>6|192,n[i++]=63&r|128):55296===(64512&r)&&56320===(64512&(e=t.charCodeAt(s+1)))?(r=65536+((1023&r)<<10)+(1023&e),++s,n[i++]=r>>18|240,n[i++]=r>>12&63|128,n[i++]=r>>6&63|128,n[i++]=63&r|128):(n[i++]=r>>12|224,n[i++]=r>>6&63|128,n[i++]=63&r|128);return i-o}},{}],5:[function(t,n,i){function r(){s.a()}var e=i,o=e.Writer=t(9);e.BufferWriter=o.BufferWriter;var s=e.Reader=t(6);e.BufferReader=s.BufferReader,e.util=t(8),e.roots={},e.configure=r,"function"==typeof define&&define.amd&&define(["long"],function(t){return t&&(e.util.Long=t,r()),e})},{6:6,8:8,9:9}],6:[function(t,n,i){"use strict";function r(t,n){return RangeError("index out of range: "+t.pos+" + "+(n||1)+" > "+t.len)}function e(t){this.buf=t,this.pos=0,this.len=t.length}function o(){var t=0,n=0,i=0,e=0;if(this.len-this.pos>9){for(i=0;i<4;++i)if(e=this.buf[this.pos++],t|=(127&e)<<7*i,e<128)return new L(t>>>0,n>>>0);if(e=this.buf[this.pos++],t|=(127&e)<<28,n|=(127&e)>>4,e<128)return new L(t>>>0,n>>>0);for(i=0;i<5;++i)if(e=this.buf[this.pos++],n|=(127&e)<<7*i+3,e<128)return new L(t>>>0,n>>>0)}else{for(i=0;i<4;++i){if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],t|=(127&e)<<7*i,e<128)return new L(t>>>0,n>>>0)}if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],t|=(127&e)<<28,n|=(127&e)>>4,e<128)return new L(t>>>0,n>>>0);for(i=0;i<5;++i){if(this.pos>=this.len)throw r(this);if(e=this.buf[this.pos++],n|=(127&e)<<7*i+3,e<128)return new L(t>>>0,n>>>0)}}throw Error("invalid varint encoding")}function s(){return o.call(this).toLong()}function u(){return o.call(this).toNumber()}function h(){return o.call(this).toLong(!0)}function f(){return o.call(this).toNumber(!0)}function a(){return o.call(this).zzDecode().toLong()}function c(){return o.call(this).zzDecode().toNumber()}function l(t,n){return t[n-4]|t[n-3]<<8|t[n-2]<<16|t[n-1]<<24}function p(){if(this.pos+8>this.len)throw r(this,8);return new L(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}function d(){return p.call(this).toLong(!0)}function b(){return p.call(this).toNumber(!0)}function g(){return p.call(this).zzDecode().toLong()}function v(){return p.call(this).zzDecode().toNumber()}function w(t){M&&M(),e.call(this,t)}function y(t,n,i){return t.utf8Slice(n,i)}function m(t,n,i){return t.toString("utf8",n,i)}function A(){B.Long?(k.int64=s,k.uint64=h,k.sint64=a,k.fixed64=d,k.sfixed64=g):(k.int64=u,k.uint64=f,k.sint64=c,k.fixed64=b,k.sfixed64=v)}n.exports=e,e.BufferReader=w;var B=t(8),x=t(1),L=B.LongBits,N=B.utf8,z="undefined"!=typeof Uint8Array?Uint8Array:Array;e.create=function(t){return new(B.Buffer?w:e)(t)};var k=e.prototype;k.b=z.prototype.subarray||z.prototype.slice,k.tag=function(){var t=this.int32();return{id:t>>>3,wireType:7&t}},k.int32=function(){var t=this.buf[this.pos++],n=127&t;if(t>127&&(t=this.buf[this.pos++],n|=(127&t)<<7,t>127&&(t=this.buf[this.pos++],n|=(127&t)<<14,t>127&&(t=this.buf[this.pos++],n|=(127&t)<<21,t>127&&(t=this.buf[this.pos++],n|=t<<28,t>127&&(this.pos+=5))))),this.pos>this.len)throw this.pos=this.len,r(this);return n},k.uint32=function(){return this.int32()>>>0},k.sint32=function(){var t=this.int32();return t>>>1^-(1&t)},k.bool=function(){return 0!==this.int32()},k.fixed32=function(){if(this.pos+4>this.len)throw r(this,4);return l(this.buf,this.pos+=4)},k.sfixed32=function(){var t=this.fixed32();return t>>>1^-(1&t)};var E="undefined"!=typeof Float32Array?function(){var t=new Float32Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[3]?function(i,r){return n[0]=i[r],n[1]=i[r+1],n[2]=i[r+2],n[3]=i[r+3],t[0]}:function(i,r){return n[3]=i[r],n[2]=i[r+1],n[1]=i[r+2],n[0]=i[r+3],t[0]}}():function(t,n){return x.read(t,n,!1,23,4)};k.float=function(){if(this.pos+4>this.len)throw r(this,4);var t=E(this.buf,this.pos);return this.pos+=4,t};var F="undefined"!=typeof Float64Array?function(){var t=new Float64Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[7]?function(i,r){return n[0]=i[r],n[1]=i[r+1],n[2]=i[r+2],n[3]=i[r+3],n[4]=i[r+4],n[5]=i[r+5],n[6]=i[r+6],n[7]=i[r+7],t[0]}:function(i,r){return n[7]=i[r],n[6]=i[r+1],n[5]=i[r+2],n[4]=i[r+3],n[3]=i[r+4],n[2]=i[r+5],n[1]=i[r+6],n[0]=i[r+7],t[0]}}():function(t,n){return x.read(t,n,!1,52,8)};k.double=function(){if(this.pos+8>this.len)throw r(this,4);var t=F(this.buf,this.pos);return this.pos+=8,t},k.bytes=function(){var t=this.int32()>>>0,n=this.pos,i=this.pos+t;if(i>this.len)throw r(this,t);return this.pos+=t,n===i?new this.buf.constructor(0):this.b.call(this.buf,n,i)},k.string=function(){var t=this.bytes();return N.read(t,0,t.length)},k.skip=function(t){if(void 0===t){do if(this.pos>=this.len)throw r(this);while(128&this.buf[this.pos++])}else{if(this.pos+t>this.len)throw r(this,t);this.pos+=t}return this},k.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;;){if(t=7&this.int32(),4===t)break;this.skipType(t)}break;case 5:this.skip(4);break;default:throw Error("invalid wire type: "+t)}return this},k.reset=function(t){return t?(this.buf=t,this.len=t.length):(this.buf=null,this.len=0),this.pos=0,this},k.finish=function(t){var n=this.pos?this.b.call(this.buf,this.pos):this.buf;return this.reset(t),n};var M=function(){var t=B.Buffer;if(!t)throw Error("Buffer is not supported");C.b=t.prototype.slice,O=t.prototype.utf8Slice?y:m,M=!1},C=w.prototype=Object.create(e.prototype);C.constructor=w,"undefined"==typeof Float32Array&&(C.float=function(){if(this.pos+4>this.len)throw r(this,4);var t=this.buf.readFloatLE(this.pos,!0);return this.pos+=4,t}),"undefined"==typeof Float64Array&&(C.double=function(){if(this.pos+8>this.len)throw r(this,8);var t=this.buf.readDoubleLE(this.pos,!0);return this.pos+=8,t});var O;C.string=function(){var t=this.int32()>>>0,n=this.pos,i=this.pos+t;if(i>this.len)throw r(this,t);return this.pos+=t,O(this.buf,n,i)},C.finish=function(t){var n=this.pos?this.buf.slice(this.pos):this.buf;return this.reset(t),n},e.a=A,A()},{1:1,8:8}],7:[function(t,n,i){"use strict";function r(t,n){this.lo=t,this.hi=n}n.exports=r;var e=t(8),o=r.prototype,s=r.zero=new r(0,0);s.toNumber=function(){return 0},s.zzEncode=s.zzDecode=function(){return this},s.length=function(){return 1},r.fromNumber=function(t){if(0===t)return s;var n=t<0;t=Math.abs(t);var i=t>>>0,e=(t-i)/4294967296>>>0;return n&&(e=~e>>>0,i=~i>>>0,++i>4294967295&&(i=0,++e>4294967295&&(e=0))),new r(i,e)},r.from=function(t){switch(typeof t){case"number":return r.fromNumber(t);case"string":if(!e.Long)return r.fromNumber(parseInt(t,10));t=e.Long.fromString(t)}return(t.low||t.high)&&new r(t.low>>>0,t.high>>>0)||s},o.toNumber=function(t){return!t&&this.hi>>>31?(this.lo=~this.lo+1>>>0,this.hi=~this.hi>>>0,this.lo||(this.hi=this.hi+1>>>0),-(this.lo+4294967296*this.hi)):this.lo+4294967296*this.hi},o.toLong=function(t){return e.Long?new e.Long(this.lo,this.hi,t):{low:this.lo,high:this.hi,unsigned:Boolean(t)}};var u=String.prototype.charCodeAt;r.fromHash=function(t){return new r((u.call(t,0)|u.call(t,1)<<8|u.call(t,2)<<16|u.call(t,3)<<24)>>>0,(u.call(t,4)|u.call(t,5)<<8|u.call(t,6)<<16|u.call(t,7)<<24)>>>0)},o.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24&255,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24&255)},o.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},o.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},o.length=function(){var t=this.lo,n=(this.lo>>>28|this.hi<<4)>>>0,i=this.hi>>>24;return 0===i?0===n?t<16384?t<128?1:2:t<1<<21?3:4:n<16384?n<128?5:6:n<1<<21?7:8:i<128?9:10}},{8:8}],8:[function(t,n,i){(function(n){"use strict";var r=i,e=r.LongBits=t(7);r.base64=t(2),r.utf8=t(4),r.pool=t(3);var o=r.isNode=Boolean(n.process&&n.process.versions&&n.process.versions.node);if(r.Buffer=null,o)try{r.Buffer=t("buffer").Buffer}catch(t){}if(r.Long=n.dcodeIO&&n.dcodeIO.Long||null,!r.Long&&o)try{r.Long=t("long")}catch(t){}r.isInteger=Number.isInteger||function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t},r.isString=function(t){return"string"==typeof t||t instanceof String},r.isObject=function(t){return Boolean(t&&"object"==typeof t)},r.longToHash=function(t){return t?e.from(t).toHash():"\0\0\0\0\0\0\0\0"},r.longFromHash=function(t,n){var i=e.fromHash(t);return r.Long?r.Long.fromBits(i.lo,i.hi,n):i.toNumber(Boolean(n))},r.longNeq=function(t,n){return"number"==typeof t?"number"==typeof n?t!==n:(t=e.fromNumber(t)).lo!==n.low||t.hi!==n.high:"number"==typeof n?(n=e.fromNumber(n)).lo!==t.low||n.hi!==t.high:t.low!==n.low||t.high!==n.high},r.props=function(t,n){Object.keys(n).forEach(function(i){r.prop(t,i,n[i])})},r.prop=function(t,n,i){var r=!-[1],e=n.substring(0,1).toUpperCase()+n.substring(1);i.get&&(t["get"+e]=i.get),i.set&&(t["set"+e]=r?function(t){i.set.call(this,t),this[n]=t}:i.set),r?void 0!==i.value&&(t[n]=i.value):Object.defineProperty(t,n,i)},r.emptyArray=Object.freeze([]),r.emptyObject=Object.freeze({})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2,3:3,4:4,7:7,buffer:"buffer",long:"long"}],9:[function(t,n,i){"use strict";function r(t,n,i){this.fn=t,this.val=n,this.len=i,this.next=null}function e(){}function o(t,n){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=n}function s(){this.len=0,this.head=new r(e,0,0),this.tail=this.head,this.states=null}function u(t,n,i){n[i]=255&t}function h(t,n,i){for(;t>127;)n[i++]=127&t|128,t>>>=7;n[i]=t}function f(t,n,i){for(;t.hi;)n[i++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)n[i++]=127&t.lo|128,t.lo=t.lo>>>7;n[i++]=t.lo}function a(t,n,i){n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i]=t>>>24}function c(){s.call(this)}function l(t,n,i){n.writeFloatLE(t,i,!0)}function p(t,n,i){n.writeDoubleLE(t,i,!0)}function d(t,n,i){t.length&&t.copy(n,i,0,t.length)}n.exports=s,s.BufferWriter=c;var b=t(8),g=t(1),v=b.LongBits,w=b.base64,y=b.utf8,m="undefined"!=typeof Uint8Array?Uint8Array:Array;s.Op=r,s.State=o,s.create=function(){return new(b.Buffer?c:s)},s.alloc=function(t){return new m(t)},m!==Array&&(s.alloc=b.pool(s.alloc,m.prototype.subarray||m.prototype.slice));var A=s.prototype;A.push=function(t,n,i){var e=new r(t,i,n);return this.tail.next=e,this.tail=e,this.len+=n,this},A.tag=function(t,n){return this.uint32(t<<3|7&n)},A.uint32=function(t){return t>>>=0,t<128?this.push(u,1,t):this.push(h,t<16384?2:t<2097152?3:t<268435456?4:5,t)},A.int32=function(t){return t<0?this.push(f,10,v.fromNumber(t)):this.uint32(t)},A.sint32=function(t){return this.uint32(t<<1^t>>31)},A.uint64=function(t){var n=v.from(t);return this.push(f,n.length(),n)},A.int64=A.uint64,A.sint64=function(t){var n=v.from(t).zzEncode();return this.push(f,n.length(),n)},A.bool=function(t){return this.push(u,1,t?1:0)},A.fixed32=function(t){return this.push(a,4,t>>>0)},A.sfixed32=function(t){return this.push(a,4,t<<1^t>>31)},A.fixed64=function(t){var n=v.from(t);return this.push(a,4,n.lo).push(a,4,n.hi)},A.sfixed64=function(t){var n=v.from(t).zzEncode();return this.push(a,4,n.lo).push(a,4,n.hi)};var B="undefined"!=typeof Float32Array?function(){var t=new Float32Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[3]?function(i,r,e){t[0]=i,r[e++]=n[0],r[e++]=n[1],r[e++]=n[2],r[e]=n[3]}:function(i,r,e){t[0]=i,r[e++]=n[3],r[e++]=n[2],r[e++]=n[1],r[e]=n[0]}}():function(t,n,i){g.write(n,t,i,!1,23,4)};A.float=function(t){return this.push(B,4,t)};var x="undefined"!=typeof Float64Array?function(){var t=new Float64Array(1),n=new Uint8Array(t.buffer);return t[0]=-0,n[7]?function(i,r,e){t[0]=i,r[e++]=n[0],r[e++]=n[1],r[e++]=n[2],r[e++]=n[3],r[e++]=n[4],r[e++]=n[5],r[e++]=n[6],r[e]=n[7]}:function(i,r,e){t[0]=i,r[e++]=n[7],r[e++]=n[6],r[e++]=n[5],r[e++]=n[4],r[e++]=n[3],r[e++]=n[2],r[e++]=n[1],r[e]=n[0]}}():function(t,n,i){g.write(n,t,i,!1,52,8)};A.double=function(t){return this.push(x,8,t)};var L=m.prototype.set?function(t,n,i){n.set(t,i)}:function(t,n,i){for(var r=0;r>>0;if("string"==typeof t&&n){var i=s.alloc(n=w.length(t));w.decode(t,i,0),t=i}return n?this.uint32(n).push(L,n,t):this.push(u,1,0)},A.string=function(t){var n=y.length(t);return n?this.uint32(n).push(y.write,n,t):this.push(u,1,0)},A.fork=function(){return this.states=new o(this,this.states),this.head=this.tail=new r(e,0,0),this.len=0,this},A.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new r(e,0,0),this.len=0),this},A.ldelim=function(t){var n=this.head,i=this.tail,r=this.len;return this.reset(),void 0!==t&&this.uint32(t<<3|2),this.uint32(r),this.tail.next=n.next,this.tail=i,this.len+=r,this},A.finish=function(){var t=this.head.next,n=this.constructor.alloc(this.len);this.reset();for(var i=0;t;)t.fn(t.val,n,i),i+=t.len,t=t.next;return n},c.alloc=function(t){return c.alloc=b.Buffer.allocUnsafe?b.Buffer.allocUnsafe:function(t){return new b.Buffer(t)},c.alloc(t)};var N=c.prototype=Object.create(s.prototype);N.constructor=c,"undefined"==typeof Float32Array&&(N.float=function(t){return this.push(l,4,t)}),"undefined"==typeof Float64Array&&(N.double=function(t){return this.push(p,8,t)}),N.bytes=function(t){"string"==typeof t&&(t=b.Buffer.from&&b.Buffer.from(t,"base64")||new b.Buffer(t,"base64"));var n=t.length>>>0;return n?this.uint32(n).push(d,n,t):this.push(u,1,0)};var z=function(){return b.Buffer&&b.Buffer.prototype.utf8Write?function(t,n,i){t.length<40?y.write(t,n,i):n.utf8Write(t,i)}:function(t,n,i){t.length<40?y.write(t,n,i):n.write(t,i)}}();N.string=function(t){var n=t.length<40?y.length(t):b.Buffer.byteLength(t);return n?this.uint32(n).push(z,n,t):this.push(u,1,0)}},{1:1,8:8}]},{},[5]); //# sourceMappingURL=protobuf.min.js.map diff --git a/dist/runtime/protobuf.min.js.gz b/dist/runtime/protobuf.min.js.gz index 8e38679a8fd8d3666cb14ddad7dcdab8a671b72d..6b0abedfafd1b04ab042b330c5f4c5a2bb6936b0 100644 GIT binary patch literal 5515 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 N{vVcwz`hnk006x6xa|M{ literal 5506 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 E0NV> 1,\r\n nBits = -7,\r\n i = isBE ? 0 : (nBytes - 1),\r\n d = isBE ? 1 : -1,\r\n s = buffer[offset + i];\r\n\r\n i += d;\r\n\r\n e = s & ((1 << (-nBits)) - 1);\r\n s >>= (-nBits);\r\n nBits += eLen;\r\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n m = e & ((1 << (-nBits)) - 1);\r\n e >>= (-nBits);\r\n nBits += mLen;\r\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n if (e === 0) {\r\n e = 1 - eBias;\r\n } else if (e === eMax) {\r\n return m ? NaN : ((s ? -1 : 1) * Infinity);\r\n } else {\r\n m = m + Math.pow(2, mLen);\r\n e = e - eBias;\r\n }\r\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\r\n};\r\n\r\nexports.write = function writeIEEE754(buffer, value, offset, isBE, mLen, nBytes) {\r\n var e, m, c,\r\n eLen = nBytes * 8 - mLen - 1,\r\n eMax = (1 << eLen) - 1,\r\n eBias = eMax >> 1,\r\n rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0),\r\n i = isBE ? (nBytes - 1) : 0,\r\n d = isBE ? -1 : 1,\r\n s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\r\n\r\n value = Math.abs(value);\r\n\r\n if (isNaN(value) || value === Infinity) {\r\n m = isNaN(value) ? 1 : 0;\r\n e = eMax;\r\n } else {\r\n e = Math.floor(Math.log(value) / Math.LN2);\r\n if (value * (c = Math.pow(2, -e)) < 1) {\r\n e--;\r\n c *= 2;\r\n }\r\n if (e + eBias >= 1) {\r\n value += rt / c;\r\n } else {\r\n value += rt * Math.pow(2, 1 - eBias);\r\n }\r\n if (value * c >= 2) {\r\n e++;\r\n c /= 2;\r\n }\r\n\r\n if (e + eBias >= eMax) {\r\n m = 0;\r\n e = eMax;\r\n } else if (e + eBias >= 1) {\r\n m = (value * c - 1) * Math.pow(2, mLen);\r\n e = e + eBias;\r\n } else {\r\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\r\n e = 0;\r\n }\r\n }\r\n\r\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8);\r\n\r\n e = (e << mLen) | m;\r\n eLen += mLen;\r\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8);\r\n\r\n buffer[offset + i - d] |= s * 128;\r\n};\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal base64 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar base64 = exports;\r\n\r\n/**\r\n * Calculates the byte length of a base64 encoded string.\r\n * @param {string} string Base64 encoded string\r\n * @returns {number} Byte length\r\n */\r\nbase64.length = function length(string) {\r\n var p = string.length;\r\n if (!p)\r\n return 0;\r\n var n = 0;\r\n while (--p % 4 > 1 && string.charAt(p) === '=')\r\n ++n;\r\n return Math.ceil(string.length * 3) / 4 - n;\r\n};\r\n\r\n// Base64 encoding table\r\nvar b64 = [];\r\n\r\n// Base64 decoding table\r\nvar s64 = [];\r\n\r\n// 65..90, 97..122, 48..57, 43, 47\r\nfor (var i = 0; i < 64;)\r\n s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++;\r\n\r\n/**\r\n * Encodes a buffer to a base64 encoded string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} Base64 encoded string\r\n */\r\nbase64.encode = function encode(buffer, start, end) {\r\n var string = []; // alt: new Array(Math.ceil((end - start) / 3) * 4);\r\n var i = 0, // output index\r\n j = 0, // goto index\r\n t; // temporary\r\n while (start < end) {\r\n var b = buffer[start++];\r\n switch (j) {\r\n case 0:\r\n string[i++] = b64[b >> 2];\r\n t = (b & 3) << 4;\r\n j = 1;\r\n break;\r\n case 1:\r\n string[i++] = b64[t | b >> 4];\r\n t = (b & 15) << 2;\r\n j = 2;\r\n break;\r\n case 2:\r\n string[i++] = b64[t | b >> 6];\r\n string[i++] = b64[b & 63];\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j) {\r\n string[i++] = b64[t];\r\n string[i ] = 61;\r\n if (j === 1)\r\n string[i + 1] = 61;\r\n }\r\n return String.fromCharCode.apply(String, string);\r\n};\r\n\r\nvar invalidEncoding = \"invalid encoding\";\r\n\r\n/**\r\n * Decodes a base64 encoded string to a buffer.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Number of bytes written\r\n * @throws {Error} If encoding is invalid\r\n */\r\nbase64.decode = function decode(string, buffer, offset) {\r\n var start = offset;\r\n var j = 0, // goto index\r\n t; // temporary\r\n for (var i = 0; i < string.length;) {\r\n var c = string.charCodeAt(i++);\r\n if (c === 61 && j > 1)\r\n break;\r\n if ((c = s64[c]) === undefined)\r\n throw Error(invalidEncoding);\r\n switch (j) {\r\n case 0:\r\n t = c;\r\n j = 1;\r\n break;\r\n case 1:\r\n buffer[offset++] = t << 2 | (c & 48) >> 4;\r\n t = c;\r\n j = 2;\r\n break;\r\n case 2:\r\n buffer[offset++] = (t & 15) << 4 | (c & 60) >> 2;\r\n t = c;\r\n j = 3;\r\n break;\r\n case 3:\r\n buffer[offset++] = (t & 3) << 6 | c;\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j === 1)\r\n throw Error(invalidEncoding);\r\n return offset - start;\r\n};\r\n","\"use strict\";\r\nmodule.exports = pool;\r\n\r\n/**\r\n * An allocator as used by {@link util.pool}.\r\n * @typedef PoolAllocator\r\n * @type {function}\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\n\r\n/**\r\n * A slicer as used by {@link util.pool}.\r\n * @typedef PoolSlicer\r\n * @type {function}\r\n * @param {number} start Start offset\r\n * @param {number} end End offset\r\n * @returns {Uint8Array} Buffer slice\r\n * @this {Uint8Array}\r\n */\r\n\r\n/**\r\n * A general purpose buffer pool.\r\n * @memberof util\r\n * @function\r\n * @param {PoolAllocator} alloc Allocator\r\n * @param {PoolSlicer} slice Slicer\r\n * @param {number} [size=8192] Slab size\r\n * @returns {PoolAllocator} Pooled allocator\r\n */\r\nfunction pool(alloc, slice, size) {\r\n var SIZE = size || 8192;\r\n var MAX = SIZE >>> 1;\r\n var slab = null;\r\n var offset = SIZE;\r\n return function pool_alloc(size) {\r\n if (size > MAX)\r\n return alloc(size);\r\n if (offset + size > SIZE) {\r\n slab = alloc(SIZE);\r\n offset = 0;\r\n }\r\n var buf = slice.call(slab, offset, offset += size);\r\n if (offset & 7) // align to 32 bit\r\n offset = (offset | 7) + 1;\r\n return buf;\r\n };\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal UTF8 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar utf8 = exports;\r\n\r\n/**\r\n * Calculates the UTF8 byte length of a string.\r\n * @param {string} string String\r\n * @returns {number} Byte length\r\n */\r\nutf8.length = function length(string) {\r\n var len = 0,\r\n c = 0;\r\n for (var i = 0; i < string.length; ++i) {\r\n c = string.charCodeAt(i);\r\n if (c < 128)\r\n len += 1;\r\n else if (c < 2048)\r\n len += 2;\r\n else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {\r\n ++i;\r\n len += 4;\r\n } else\r\n len += 3;\r\n }\r\n return len;\r\n};\r\n\r\n/**\r\n * Reads UTF8 bytes as a string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} String read\r\n */\r\nutf8.read = function(buffer, start, end) {\r\n var len = end - start;\r\n if (len < 1)\r\n return \"\";\r\n var string = [],\r\n i = 0, // char offset\r\n t; // temporary\r\n while (start < end) {\r\n t = buffer[start++];\r\n if (t < 128)\r\n string[i++] = t;\r\n else if (t > 191 && t < 224)\r\n string[i++] = (t & 31) << 6 | buffer[start++] & 63;\r\n else if (t > 239 && t < 365) {\r\n t = ((t & 7) << 18 | (buffer[start++] & 63) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63) - 0x10000;\r\n string[i++] = 0xD800 + (t >> 10);\r\n string[i++] = 0xDC00 + (t & 1023);\r\n } else\r\n string[i++] = (t & 15) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63;\r\n }\r\n return String.fromCharCode.apply(String, string.slice(0, i));\r\n};\r\n\r\n/**\r\n * Writes a string as UTF8 bytes.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Bytes written\r\n */\r\nutf8.write = function(string, buffer, offset) {\r\n var start = offset,\r\n c1, // character 1\r\n c2; // character 2\r\n for (var i = 0; i < string.length; ++i) {\r\n c1 = string.charCodeAt(i);\r\n if (c1 < 128) {\r\n buffer[offset++] = c1;\r\n } else if (c1 < 2048) {\r\n buffer[offset++] = c1 >> 6 | 192;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {\r\n c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);\r\n ++i;\r\n buffer[offset++] = c1 >> 18 | 240;\r\n buffer[offset++] = c1 >> 12 & 63 | 128;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else {\r\n buffer[offset++] = c1 >> 12 | 224;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n }\r\n }\r\n return offset - start;\r\n};\r\n","// This file exports just the bare minimum required to work with statically generated code.\r\n// Can be used as a drop-in replacement for the full library as it has the same general structure.\r\nvar protobuf = exports;\r\n\r\n var Writer =\r\nprotobuf.Writer = require(9);\r\nprotobuf.BufferWriter = Writer.BufferWriter;\r\n var Reader =\r\nprotobuf.Reader = require(6);\r\nprotobuf.BufferReader = Reader.BufferReader;\r\nprotobuf.util = require(8);\r\n\r\nfunction configure() {\r\n Reader._configure();\r\n}\r\n\r\nprotobuf.configure = configure;\r\n\r\n// Be nice to AMD\r\nif (typeof define === \"function\" && define.amd)\r\n define([\"long\"], function(Long) {\r\n if (Long) {\r\n protobuf.util.Long = Long;\r\n configure();\r\n }\r\n return protobuf;\r\n });\r\n","\"use strict\";\r\nmodule.exports = Reader;\r\n\r\nReader.BufferReader = BufferReader;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\nfunction indexOutOfRange(reader, writeLength) {\r\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\r\n}\r\n\r\n/**\r\n * Constructs a new reader instance using the specified buffer.\r\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n * @param {Uint8Array} buffer Buffer to read from\r\n */\r\nfunction Reader(buffer) {\r\n \r\n /**\r\n * Read buffer.\r\n * @type {Uint8Array}\r\n */\r\n this.buf = buffer;\r\n\r\n /**\r\n * Read buffer position.\r\n * @type {number}\r\n */\r\n this.pos = 0;\r\n\r\n /**\r\n * Read buffer length.\r\n * @type {number}\r\n */\r\n this.len = buffer.length;\r\n}\r\n\r\n/**\r\n * Creates a new reader using the specified buffer.\r\n * @param {Uint8Array} buffer Buffer to read from\r\n * @returns {BufferReader|Reader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\r\n */\r\nReader.create = function create(buffer) {\r\n return new (util.Buffer ? BufferReader : Reader)(buffer);\r\n};\r\n\r\n/** @alias Reader.prototype */\r\nvar ReaderPrototype = Reader.prototype;\r\n\r\nReaderPrototype._slice = ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice;\r\n\r\n/**\r\n * Reads a tag.\r\n * @returns {{id: number, wireType: number}} Field id and wire type\r\n */\r\nReaderPrototype.tag = function read_tag() {\r\n // deprecated internally, but remains for completeness\r\n var val = this.int32();\r\n return {\r\n id: val >>> 3,\r\n wireType: val & 7\r\n };\r\n};\r\n\r\n/**\r\n * Reads a varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.int32 = function read_int32() {\r\n // 1 byte\r\n var octet = this.buf[this.pos++],\r\n value = octet & 127;\r\n if (octet > 127) { // false if octet is undefined (pos >= len)\r\n // 2 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 7;\r\n if (octet > 127) {\r\n // 3 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 14;\r\n if (octet > 127) {\r\n // 4 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 21;\r\n if (octet > 127) {\r\n // 5 bytes\r\n octet = this.buf[this.pos++];\r\n value |= octet << 28;\r\n if (octet > 127) {\r\n // 6..10 bytes (sign extended)\r\n this.pos += 5;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (this.pos > this.len) {\r\n this.pos = this.len;\r\n throw indexOutOfRange(this);\r\n }\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a varint as an unsigned 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.uint32 = function read_uint32() {\r\n return this.int32() >>> 0;\r\n};\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sint32 = function read_sint32() {\r\n var value = this.int32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readLongVarint() {\r\n var lo = 0, hi = 0,\r\n i = 0, b = 0;\r\n if (this.len - this.pos > 9) { // fast route\r\n for (i = 0; i < 4; ++i) {\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n } else {\r\n for (i = 0; i < 4; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n }\r\n throw Error(\"invalid varint encoding\");\r\n}\r\n\r\nfunction read_int64_long() {\r\n return readLongVarint.call(this).toLong();\r\n}\r\n\r\nfunction read_int64_number() {\r\n return readLongVarint.call(this).toNumber();\r\n}\r\n\r\nfunction read_uint64_long() {\r\n return readLongVarint.call(this).toLong(true);\r\n}\r\n\r\nfunction read_uint64_number() {\r\n return readLongVarint.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sint64_long() {\r\n return readLongVarint.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sint64_number() {\r\n return readLongVarint.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads a varint as a signed 64 bit value.\r\n * @name Reader#int64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as an unsigned 64 bit value.\r\n * @name Reader#uint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 64 bit value.\r\n * @name Reader#sint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as a boolean.\r\n * @returns {boolean} Value read\r\n */\r\nReaderPrototype.bool = function read_bool() {\r\n return this.int32() !== 0;\r\n};\r\n\r\nfunction readFixed32(buf, end) {\r\n return buf[end - 4]\r\n | buf[end - 3] << 8\r\n | buf[end - 2] << 16\r\n | buf[end - 1] << 24;\r\n}\r\n\r\n/**\r\n * Reads fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.fixed32 = function read_fixed32() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n return readFixed32(this.buf, this.pos += 4);\r\n};\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sfixed32 = function read_sfixed32() {\r\n var value = this.fixed32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readFixed64(/* this: Reader */) {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n return new LongBits(readFixed32(this.buf, this.pos += 4), readFixed32(this.buf, this.pos += 4));\r\n}\r\n\r\nfunction read_fixed64_long() {\r\n return readFixed64.call(this).toLong(true);\r\n}\r\n\r\nfunction read_fixed64_number() {\r\n return readFixed64.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sfixed64_long() {\r\n return readFixed64.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sfixed64_number() {\r\n return readFixed64.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads fixed 64 bits.\r\n * @name Reader#fixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 64 bits.\r\n * @name Reader#sfixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\nvar readFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function readFloat_f32(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n : function readFloat_f32_le(buf, pos) {\r\n f8b[3] = buf[pos ];\r\n f8b[2] = buf[pos + 1];\r\n f8b[1] = buf[pos + 2];\r\n f8b[0] = buf[pos + 3];\r\n return f32[0];\r\n };\r\n })()\r\n : function readFloat_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Reads a float (32 bit) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.float = function read_float() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readFloat(this.buf, this.pos);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nvar readDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function readDouble_f64(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n f8b[4] = buf[pos + 4];\r\n f8b[5] = buf[pos + 5];\r\n f8b[6] = buf[pos + 6];\r\n f8b[7] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n : function readDouble_f64_le(buf, pos) {\r\n f8b[7] = buf[pos ];\r\n f8b[6] = buf[pos + 1];\r\n f8b[5] = buf[pos + 2];\r\n f8b[4] = buf[pos + 3];\r\n f8b[3] = buf[pos + 4];\r\n f8b[2] = buf[pos + 5];\r\n f8b[1] = buf[pos + 6];\r\n f8b[0] = buf[pos + 7];\r\n return f64[0];\r\n };\r\n })()\r\n : function readDouble_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Reads a double (64 bit float) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.double = function read_double() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readDouble(this.buf, this.pos);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a sequence of bytes preceeded by its length as a varint.\r\n * @returns {Uint8Array} Value read\r\n */\r\nReaderPrototype.bytes = function read_bytes() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\r\n ? new this.buf.constructor(0)\r\n : this._slice.call(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * Reads a string preceeded by its byte length as a varint.\r\n * @returns {string} Value read\r\n */\r\nReaderPrototype.string = function read_string() {\r\n var bytes = this.bytes();\r\n return utf8.read(bytes, 0, bytes.length);\r\n};\r\n\r\n/**\r\n * Skips the specified number of bytes if specified, otherwise skips a varint.\r\n * @param {number} [length] Length if known, otherwise a varint is assumed\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skip = function skip(length) {\r\n if (length === undefined) {\r\n do {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n } while (this.buf[this.pos++] & 128);\r\n } else {\r\n if (this.pos + length > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Skips the next element of the specified wire type.\r\n * @param {number} wireType Wire type received\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skipType = function(wireType) {\r\n switch (wireType) {\r\n case 0:\r\n this.skip();\r\n break;\r\n case 1:\r\n this.skip(8);\r\n break;\r\n case 2:\r\n this.skip(this.uint32());\r\n break;\r\n case 3:\r\n do { // eslint-disable-line no-constant-condition\r\n wireType = this.int32() & 7;\r\n if (wireType === 4)\r\n break;\r\n this.skipType(wireType);\r\n } while (true);\r\n break;\r\n case 5:\r\n this.skip(4);\r\n break;\r\n default:\r\n throw Error(\"invalid wire type: \" + wireType);\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance and frees all resources.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.reset = function reset(buffer) {\r\n if (buffer) {\r\n this.buf = buffer;\r\n this.len = buffer.length;\r\n } else {\r\n this.buf = null; // makes it throw\r\n this.len = 0;\r\n }\r\n this.pos = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of read operations, frees all resources and returns the remaining buffer.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nReaderPrototype.finish = function finish(buffer) {\r\n var remain = this.pos\r\n ? this._slice.call(this.buf, this.pos)\r\n : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\n// One time function to initialize BufferReader with the now-known buffer implementation's slice method\r\nvar initBufferReader = function() {\r\n var Buffer = util.Buffer;\r\n if (!Buffer)\r\n throw Error(\"Buffer is not supported\");\r\n BufferReaderPrototype._slice = Buffer.prototype.slice;\r\n readStringBuffer = Buffer.prototype.utf8Slice // around forever, but not present in browser buffer\r\n ? readStringBuffer_utf8Slice\r\n : readStringBuffer_toString;\r\n initBufferReader = false;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer reader instance.\r\n * @classdesc Wire format reader using node buffers.\r\n * @extends Reader\r\n * @constructor\r\n * @param {Buffer} buffer Buffer to read from\r\n */\r\nfunction BufferReader(buffer) {\r\n if (initBufferReader)\r\n initBufferReader();\r\n Reader.call(this, buffer);\r\n}\r\n\r\n/** @alias BufferReader.prototype */\r\nvar BufferReaderPrototype = BufferReader.prototype = Object.create(Reader.prototype);\r\n\r\nBufferReaderPrototype.constructor = BufferReader;\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.float = function read_float_buffer() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = this.buf.readFloatLE(this.pos, true);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.double = function read_double_buffer() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n var value = this.buf.readDoubleLE(this.pos, true);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\nvar readStringBuffer;\r\n\r\nfunction readStringBuffer_utf8Slice(buf, start, end) {\r\n return buf.utf8Slice(start, end); // fastest\r\n}\r\n\r\nfunction readStringBuffer_toString(buf, start, end) {\r\n return buf.toString(\"utf8\", start, end); // 2nd, again assertions\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.string = function read_string_buffer() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return readStringBuffer(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.finish = function finish_buffer(buffer) {\r\n var remain = this.pos ? this.buf.slice(this.pos) : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\nfunction configure() {\r\n if (util.Long) {\r\n ReaderPrototype.int64 = read_int64_long;\r\n ReaderPrototype.uint64 = read_uint64_long;\r\n ReaderPrototype.sint64 = read_sint64_long;\r\n ReaderPrototype.fixed64 = read_fixed64_long;\r\n ReaderPrototype.sfixed64 = read_sfixed64_long;\r\n } else {\r\n ReaderPrototype.int64 = read_int64_number;\r\n ReaderPrototype.uint64 = read_uint64_number;\r\n ReaderPrototype.sint64 = read_sint64_number;\r\n ReaderPrototype.fixed64 = read_fixed64_number;\r\n ReaderPrototype.sfixed64 = read_sfixed64_number;\r\n }\r\n}\r\n\r\nReader._configure = configure;\r\n\r\nconfigure();\r\n","\"use strict\";\r\n\r\nmodule.exports = LongBits;\r\n\r\nvar util = require(8);\r\n\r\n/**\r\n * Any compatible Long instance.\r\n * @typedef Long\r\n * @type {Object}\r\n * @property {number} low Low bits\r\n * @property {number} high High bits\r\n * @property {boolean} unsigned Whether unsigned or not\r\n */\r\n\r\n/**\r\n * Constructs new long bits.\r\n * @classdesc Helper class for working with the low and high bits of a 64 bit value.\r\n * @memberof util\r\n * @constructor\r\n * @param {number} lo Low bits\r\n * @param {number} hi High bits\r\n */\r\nfunction LongBits(lo, hi) { // make sure to always call this with unsigned 32bits for proper optimization\r\n\r\n /**\r\n * Low bits.\r\n * @type {number}\r\n */\r\n this.lo = lo;\r\n\r\n /**\r\n * High bits.\r\n * @type {number}\r\n */\r\n this.hi = hi;\r\n}\r\n\r\n/** @alias util.LongBits.prototype */\r\nvar LongBitsPrototype = LongBits.prototype;\r\n\r\n/**\r\n * Zero bits.\r\n * @memberof util.LongBits\r\n * @type {util.LongBits}\r\n */\r\nvar zero = LongBits.zero = new LongBits(0, 0);\r\n\r\nzero.toNumber = function() { return 0; };\r\nzero.zzEncode = zero.zzDecode = function() { return this; };\r\nzero.length = function() { return 1; };\r\n\r\n/**\r\n * Constructs new long bits from the specified number.\r\n * @param {number} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.fromNumber = function fromNumber(value) {\r\n if (value === 0)\r\n return zero;\r\n var sign = value < 0;\r\n value = Math.abs(value);\r\n var lo = value >>> 0,\r\n hi = (value - lo) / 4294967296 >>> 0;\r\n if (sign) {\r\n hi = ~hi >>> 0;\r\n lo = ~lo >>> 0;\r\n if (++lo > 4294967295) {\r\n lo = 0;\r\n if (++hi > 4294967295)\r\n hi = 0;\r\n }\r\n }\r\n return new LongBits(lo, hi);\r\n};\r\n\r\n/**\r\n * Constructs new long bits from a number, long or string.\r\n * @param {Long|number|string} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.from = function from(value) {\r\n switch (typeof value) {\r\n case \"number\":\r\n return LongBits.fromNumber(value);\r\n case \"string\":\r\n if (util.Long)\r\n value = util.Long.fromString(value);\r\n // fallthrough\r\n else\r\n return LongBits.fromNumber(parseInt(value, 10));\r\n }\r\n return (value.low || value.high) && new LongBits(value.low >>> 0, value.high >>> 0) || zero;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a possibly unsafe JavaScript number.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {number} Possibly unsafe number\r\n */\r\nLongBitsPrototype.toNumber = function toNumber(unsigned) {\r\n if (!unsigned && this.hi >>> 31) {\r\n this.lo = ~this.lo + 1 >>> 0;\r\n this.hi = ~this.hi >>> 0;\r\n if (!this.lo)\r\n this.hi = this.hi + 1 >>> 0;\r\n return -(this.lo + this.hi * 4294967296);\r\n }\r\n return this.lo + this.hi * 4294967296;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a long.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long} Long\r\n */\r\nLongBitsPrototype.toLong = function toLong(unsigned) {\r\n return util.Long\r\n ? new util.Long(this.lo, this.hi, unsigned)\r\n : { low: this.lo, high: this.hi, unsigned: Boolean(unsigned) };\r\n};\r\n\r\nvar charCodeAt = String.prototype.charCodeAt;\r\n\r\n/**\r\n * Constructs new long bits from the specified 8 characters long hash.\r\n * @param {string} hash Hash\r\n * @returns {util.LongBits} Bits\r\n */\r\nLongBits.fromHash = function fromHash(hash) {\r\n return new LongBits(\r\n ( charCodeAt.call(hash, 0)\r\n | charCodeAt.call(hash, 1) << 8\r\n | charCodeAt.call(hash, 2) << 16\r\n | charCodeAt.call(hash, 3) << 24) >>> 0\r\n ,\r\n ( charCodeAt.call(hash, 4)\r\n | charCodeAt.call(hash, 5) << 8\r\n | charCodeAt.call(hash, 6) << 16\r\n | charCodeAt.call(hash, 7) << 24) >>> 0\r\n );\r\n};\r\n\r\n/**\r\n * Converts this long bits to a 8 characters long hash.\r\n * @returns {string} Hash\r\n */\r\nLongBitsPrototype.toHash = function toHash() {\r\n return String.fromCharCode(\r\n this.lo & 255,\r\n this.lo >>> 8 & 255,\r\n this.lo >>> 16 & 255,\r\n this.lo >>> 24 & 255,\r\n this.hi & 255,\r\n this.hi >>> 8 & 255,\r\n this.hi >>> 16 & 255,\r\n this.hi >>> 24 & 255\r\n );\r\n};\r\n\r\n/**\r\n * Zig-zag encodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzEncode = function zzEncode() {\r\n var mask = this.hi >> 31;\r\n this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0;\r\n this.lo = ( this.lo << 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Zig-zag decodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzDecode = function zzDecode() {\r\n var mask = -(this.lo & 1);\r\n this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0;\r\n this.hi = ( this.hi >>> 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Calculates the length of this longbits when encoded as a varint.\r\n * @returns {number} Length\r\n */\r\nLongBitsPrototype.length = function length() {\r\n var part0 = this.lo,\r\n part1 = (this.lo >>> 28 | this.hi << 4) >>> 0,\r\n part2 = this.hi >>> 24;\r\n if (part2 === 0) {\r\n if (part1 === 0)\r\n return part0 < 1 << 14\r\n ? part0 < 1 << 7 ? 1 : 2\r\n : part0 < 1 << 21 ? 3 : 4;\r\n return part1 < 1 << 14\r\n ? part1 < 1 << 7 ? 5 : 6\r\n : part1 < 1 << 21 ? 7 : 8;\r\n }\r\n return part2 < 1 << 7 ? 9 : 10;\r\n};\r\n","\"use strict\";\r\n\r\nvar util = exports;\r\n\r\nvar LongBits = util.LongBits = require(\"./longbits\");\r\n\r\nutil.base64 = require(\"@protobufjs/base64\");\r\nutil.utf8 = require(\"@protobufjs/utf8\");\r\nutil.pool = require(\"@protobufjs/pool\");\r\n\r\n/**\r\n * Whether running within node or not.\r\n * @memberof util\r\n * @type {boolean}\r\n */\r\nvar isNode = util.isNode = Boolean(global.process && global.process.versions && global.process.versions.node);\r\n\r\n/**\r\n * Optional buffer class to use.\r\n * If you assign any compatible buffer implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Buffer = null;\r\n\r\nif (isNode)\r\n try { util.Buffer = require(\"buffer\").Buffer; } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Optional Long class to use.\r\n * If you assign any compatible long implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Long = global.dcodeIO && global.dcodeIO.Long || null;\r\n\r\nif (!util.Long && isNode)\r\n try { util.Long = require(\"long\"); } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Tests if the specified value is an integer.\r\n * @function\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is an integer\r\n */\r\nutil.isInteger = Number.isInteger || function isInteger(value) {\r\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a string.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a string\r\n */\r\nutil.isString = function isString(value) {\r\n return typeof value === \"string\" || value instanceof String;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a non-null object.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a non-null object\r\n */\r\nutil.isObject = function isObject(value) {\r\n return Boolean(value && typeof value === \"object\");\r\n};\r\n\r\n/**\r\n * Converts a number or long to an 8 characters long hash string.\r\n * @param {Long|number} value Value to convert\r\n * @returns {string} Hash\r\n */\r\nutil.longToHash = function longToHash(value) {\r\n return value\r\n ? LongBits.from(value).toHash()\r\n : \"\\0\\0\\0\\0\\0\\0\\0\\0\";\r\n};\r\n\r\n/**\r\n * Converts an 8 characters long hash string to a long or number.\r\n * @param {string} hash Hash\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long|number} Original value\r\n */\r\nutil.longFromHash = function longFromHash(hash, unsigned) {\r\n var bits = LongBits.fromHash(hash);\r\n if (util.Long)\r\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\r\n return bits.toNumber(Boolean(unsigned));\r\n};\r\n\r\n/**\r\n * Tests if two possibly long values are not equal.\r\n * @param {number|Long} a First value\r\n * @param {number|Long} b Second value\r\n * @returns {boolean} `true` if not equal\r\n */\r\nutil.longNeq = function longNeq(a, b) {\r\n return typeof a === \"number\"\r\n ? typeof b === \"number\"\r\n ? a !== b\r\n : (a = LongBits.fromNumber(a)).lo !== b.low || a.hi !== b.high\r\n : typeof b === \"number\"\r\n ? (b = LongBits.fromNumber(b)).lo !== a.low || b.hi !== a.high\r\n : a.low !== b.low || a.high !== b.high;\r\n};\r\n\r\n/**\r\n * Defines the specified properties on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {Object} descriptors Property descriptors\r\n * @returns {undefined}\r\n */\r\nutil.props = function props(target, descriptors) {\r\n Object.keys(descriptors).forEach(function(key) {\r\n util.prop(target, key, descriptors[key]);\r\n });\r\n};\r\n\r\n/**\r\n * Defines the specified property on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {string} key Property name\r\n * @param {Object} descriptor Property descriptor\r\n * @returns {undefined}\r\n */\r\nutil.prop = function prop(target, key, descriptor) {\r\n var ie8 = !-[1,];\r\n var ucKey = key.substring(0, 1).toUpperCase() + key.substring(1);\r\n if (descriptor.get)\r\n target[\"get\" + ucKey] = descriptor.get;\r\n if (descriptor.set)\r\n target[\"set\" + ucKey] = ie8\r\n ? function(value) {\r\n descriptor.set.call(this, value);\r\n this[key] = value;\r\n }\r\n : descriptor.set;\r\n if (ie8) {\r\n if (descriptor.value !== undefined)\r\n target[key] = descriptor.value;\r\n } else\r\n Object.defineProperty(target, key, descriptor);\r\n};\r\n\r\n/**\r\n * An immuable empty array.\r\n * @memberof util\r\n * @type {Array.<*>}\r\n */\r\nutil.emptyArray = Object.freeze([]);\r\n\r\n/**\r\n * An immutable empty object.\r\n * @type {Object}\r\n */\r\nutil.emptyObject = Object.freeze({});\r\n","\"use strict\";\r\nmodule.exports = Writer;\r\n\r\nWriter.BufferWriter = BufferWriter;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n base64 = util.base64,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\n/**\r\n * Constructs a new writer operation instance.\r\n * @classdesc Scheduled writer operation.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {function(*, Uint8Array, number)} fn Function to call\r\n * @param {*} val Value to write\r\n * @param {number} len Value byte length\r\n * @private\r\n * @ignore\r\n */\r\nfunction Op(fn, val, len) {\r\n\r\n /**\r\n * Function to call.\r\n * @type {function(Uint8Array, number, *)}\r\n */\r\n this.fn = fn;\r\n\r\n /**\r\n * Value to write.\r\n * @type {*}\r\n */\r\n this.val = val;\r\n\r\n /**\r\n * Value byte length.\r\n * @type {number}\r\n */\r\n this.len = len;\r\n\r\n /**\r\n * Next operation.\r\n * @type {?Writer.Op}\r\n */\r\n this.next = null;\r\n}\r\n\r\nWriter.Op = Op;\r\n\r\nfunction noop() {} // eslint-disable-line no-empty-function\r\n\r\n/**\r\n * Constructs a new writer state instance.\r\n * @classdesc Copied writer state.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {Writer} writer Writer to copy state from\r\n * @param {State} next Next state entry\r\n * @private\r\n * @ignore\r\n */\r\nfunction State(writer, next) {\r\n\r\n /**\r\n * Current head.\r\n * @type {Writer.Op}\r\n */\r\n this.head = writer.head;\r\n\r\n /**\r\n * Current tail.\r\n * @type {Writer.Op}\r\n */\r\n this.tail = writer.tail;\r\n\r\n /**\r\n * Current buffer length.\r\n * @type {number}\r\n */\r\n this.len = writer.len;\r\n\r\n /**\r\n * Next state.\r\n * @type {?State}\r\n */\r\n this.next = next;\r\n}\r\n\r\nWriter.State = State;\r\n\r\n/**\r\n * Constructs a new writer instance.\r\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n */\r\nfunction Writer() {\r\n\r\n /**\r\n * Current length.\r\n * @type {number}\r\n */\r\n this.len = 0;\r\n\r\n /**\r\n * Operations head.\r\n * @type {Object}\r\n */\r\n this.head = new Op(noop, 0, 0);\r\n\r\n /**\r\n * Operations tail\r\n * @type {Object}\r\n */\r\n this.tail = this.head;\r\n\r\n /**\r\n * Linked forked states.\r\n * @type {?Object}\r\n */\r\n this.states = null;\r\n\r\n // When a value is written, the writer calculates its byte length and puts it into a linked\r\n // list of operations to perform when finish() is called. This both allows us to allocate\r\n // buffers of the exact required size and reduces the amount of work we have to do compared\r\n // to first calculating over objects and then encoding over objects. In our case, the encoding\r\n // part is just a linked list walk calling linked operations with already prepared values.\r\n}\r\n\r\n/**\r\n * Creates a new writer.\r\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\r\n */\r\nWriter.create = function create() {\r\n return new (util.Buffer ? BufferWriter : Writer);\r\n};\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nWriter.alloc = function alloc(size) {\r\n return new ArrayImpl(size);\r\n};\r\n\r\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\r\nif (ArrayImpl !== Array)\r\n Writer.alloc = util.pool(Writer.alloc, ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice);\r\n\r\n/** @alias Writer.prototype */\r\nvar WriterPrototype = Writer.prototype;\r\n\r\n/**\r\n * Pushes a new operation to the queue.\r\n * @param {function(Uint8Array, number, *)} fn Function to call\r\n * @param {number} len Value byte length\r\n * @param {number} val Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.push = function push(fn, len, val) {\r\n var op = new Op(fn, val, len);\r\n this.tail.next = op;\r\n this.tail = op;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\nfunction writeByte(val, buf, pos) {\r\n buf[pos] = val & 255;\r\n}\r\n\r\n/**\r\n * Writes a tag.\r\n * @param {number} id Field id\r\n * @param {number} wireType Wire type\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.tag = function write_tag(id, wireType) {\r\n // deprecated internally, but remains for completeness\r\n return this.uint32(id << 3 | wireType & 7);\r\n};\r\n\r\nfunction writeVarint32(val, buf, pos) {\r\n while (val > 127) {\r\n buf[pos++] = val & 127 | 128;\r\n val >>>= 7;\r\n }\r\n buf[pos] = val;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 32 bit value as a varint.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.uint32 = function write_uint32(value) {\r\n value >>>= 0;\r\n return value < 128\r\n ? this.push(writeByte, 1, value)\r\n : this.push(writeVarint32,\r\n value < 16384 ? 2\r\n : value < 2097152 ? 3\r\n : value < 268435456 ? 4\r\n : 5\r\n , value);\r\n};\r\n\r\n/**\r\n * Writes a signed 32 bit value as a varint.\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.int32 = function write_int32(value) {\r\n return value < 0\r\n ? this.push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\r\n : this.uint32(value);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as a varint, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sint32 = function write_sint32(value) {\r\n return this.uint32(value << 1 ^ value >> 31);\r\n};\r\n\r\nfunction writeVarint64(val, buf, pos) {\r\n // tends to deoptimize. stays optimized when using bits directly.\r\n while (val.hi) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\r\n val.hi >>>= 7;\r\n }\r\n while (val.lo > 127) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = val.lo >>> 7;\r\n }\r\n buf[pos++] = val.lo;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 64 bit value as a varint.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.uint64 = function write_uint64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint.\r\n * @function\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.int64 = WriterPrototype.uint64;\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sint64 = function write_sint64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a boolish value as a varint.\r\n * @param {boolean} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bool = function write_bool(value) {\r\n return this.push(writeByte, 1, value ? 1 : 0);\r\n};\r\n\r\nfunction writeFixed32(val, buf, pos) {\r\n buf[pos++] = val & 255;\r\n buf[pos++] = val >>> 8 & 255;\r\n buf[pos++] = val >>> 16 & 255;\r\n buf[pos ] = val >>> 24;\r\n}\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fixed32 = function write_fixed32(value) {\r\n return this.push(writeFixed32, 4, value >>> 0);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sfixed32 = function write_sfixed32(value) {\r\n return this.push(writeFixed32, 4, value << 1 ^ value >> 31);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.fixed64 = function write_fixed64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sfixed64 = function write_sfixed64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\nvar writeFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function writeFloat_f32(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos ] = f8b[3];\r\n }\r\n : function writeFloat_f32_le(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeFloat_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Writes a float (32 bit).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.float = function write_float(value) {\r\n return this.push(writeFloat, 4, value);\r\n};\r\n\r\nvar writeDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function writeDouble_f64(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[6];\r\n buf[pos ] = f8b[7];\r\n }\r\n : function writeDouble_f64_le(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[7];\r\n buf[pos++] = f8b[6];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeDouble_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Writes a double (64 bit float).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.double = function write_double(value) {\r\n return this.push(writeDouble, 8, value);\r\n};\r\n\r\nvar writeBytes = ArrayImpl.prototype.set\r\n ? function writeBytes_set(val, buf, pos) {\r\n buf.set(val, pos);\r\n }\r\n : function writeBytes_for(val, buf, pos) {\r\n for (var i = 0; i < val.length; ++i)\r\n buf[pos + i] = val[i];\r\n };\r\n\r\n/**\r\n * Writes a sequence of bytes.\r\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bytes = function write_bytes(value) {\r\n var len = value.length >>> 0;\r\n if (typeof value === \"string\" && len) {\r\n var buf = Writer.alloc(len = base64.length(value));\r\n base64.decode(value, buf, 0);\r\n value = buf;\r\n }\r\n return len\r\n ? this.uint32(len).push(writeBytes, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Writes a string.\r\n * @param {string} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.string = function write_string(value) {\r\n var len = utf8.length(value);\r\n return len\r\n ? this.uint32(len).push(utf8.write, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Forks this writer's state by pushing it to a stack.\r\n * Calling {@link Writer#}, {@link Writer#reset} or {@link Writer#finish} resets the writer to the previous state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fork = function fork() {\r\n this.states = new State(this, this.states);\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance to the last state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.reset = function reset() {\r\n if (this.states) {\r\n this.head = this.states.head;\r\n this.tail = this.states.tail;\r\n this.len = this.states.len;\r\n this.states = this.states.next;\r\n } else {\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\r\n * @param {number} [id] Id with wire type 2 to prepend as a tag where applicable\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.ldelim = function ldelim(id) {\r\n var head = this.head,\r\n tail = this.tail,\r\n len = this.len;\r\n this.reset();\r\n if (id !== undefined)\r\n this.uint32(id << 3 | 2);\r\n this.uint32(len);\r\n this.tail.next = head.next; // skip noop\r\n this.tail = tail;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of write operations and frees all resources.\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nWriterPrototype.finish = function finish() {\r\n var head = this.head.next, // skip noop\r\n buf = this.constructor.alloc(this.len);\r\n this.reset();\r\n var pos = 0;\r\n while (head) {\r\n head.fn(head.val, buf, pos);\r\n pos += head.len;\r\n head = head.next;\r\n }\r\n return buf;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer writer instance.\r\n * @classdesc Wire format writer using node buffers.\r\n * @exports BufferWriter\r\n * @extends Writer\r\n * @constructor\r\n */\r\nfunction BufferWriter() {\r\n Writer.call(this);\r\n}\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nBufferWriter.alloc = function alloc_buffer(size) {\r\n BufferWriter.alloc = util.Buffer.allocUnsafe\r\n ? util.Buffer.allocUnsafe\r\n : function allocUnsafeNew(size) { return new util.Buffer(size); };\r\n return BufferWriter.alloc(size);\r\n};\r\n\r\n/** @alias BufferWriter.prototype */\r\nvar BufferWriterPrototype = BufferWriter.prototype = Object.create(Writer.prototype);\r\nBufferWriterPrototype.constructor = BufferWriter;\r\n\r\nfunction writeFloatBuffer(val, buf, pos) {\r\n buf.writeFloatLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.float = function write_float_buffer(value) {\r\n return this.push(writeFloatBuffer, 4, value);\r\n};\r\n\r\nfunction writeDoubleBuffer(val, buf, pos) {\r\n buf.writeDoubleLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.double = function write_double_buffer(value) {\r\n return this.push(writeDoubleBuffer, 8, value);\r\n};\r\n\r\nfunction writeBytesBuffer(val, buf, pos) {\r\n if (val.length)\r\n val.copy(buf, pos, 0, val.length);\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.bytes = function write_bytes_buffer(value) {\r\n if (typeof value === \"string\")\r\n value = util.Buffer.from && util.Buffer.from(value, \"base64\") || new util.Buffer(value, \"base64\");\r\n var len = value.length >>> 0;\r\n return len\r\n ? this.uint32(len).push(writeBytesBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\nvar writeStringBuffer = (function() { // eslint-disable-line wrap-iife\r\n return util.Buffer && util.Buffer.prototype.utf8Write // around forever, but not present in browser buffer\r\n ? function writeString_buffer_utf8Write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.utf8Write(val, pos);\r\n }\r\n : function writeString_buffer_write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.write(val, pos);\r\n };\r\n // Note that the plain JS encoder is faster for short strings, probably because of redundant assertions.\r\n // For a raw utf8Write, the breaking point is about 20 characters, for write it is around 40 characters.\r\n // Unfortunately, this does not translate 1:1 to real use cases, hence the common \"good enough\" limit of 40.\r\n})();\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.string = function write_string_buffer(value) {\r\n var len = value.length < 40\r\n ? utf8.length(value)\r\n : util.Buffer.byteLength(value);\r\n return len\r\n ? this.uint32(len).push(writeStringBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n"],"sourceRoot":"."} \ No newline at end of file +{"version":3,"sources":["node_modules/browser-pack/_prelude.js","lib/ieee754.js","node_modules/@protobufjs/base64/index.js","node_modules/@protobufjs/pool/index.js","node_modules/@protobufjs/utf8/index.js","runtime","src/reader.js","src/util/longbits.js","src/util/runtime.js","src/writer.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","read","buffer","offset","isBE","mLen","nBytes","m","eLen","eMax","eBias","nBits","d","NaN","Infinity","Math","pow","write","value","c","rt","abs","isNaN","floor","log","LN2","base64","string","p","charAt","ceil","b64","s64","encode","start","end","j","b","String","fromCharCode","apply","invalidEncoding","decode","charCodeAt","undefined","pool","alloc","slice","size","SIZE","MAX","slab","buf","utf8","len","c1","c2","configure","Reader","_configure","protobuf","Writer","BufferWriter","BufferReader","util","roots","define","amd","Long","indexOutOfRange","reader","writeLength","RangeError","pos","this","readLongVarint","lo","hi","LongBits","read_int64_long","toLong","read_int64_number","toNumber","read_uint64_long","read_uint64_number","read_sint64_long","zzDecode","read_sint64_number","readFixed32","readFixed64","read_fixed64_long","read_fixed64_number","read_sfixed64_long","read_sfixed64_number","initBufferReader","readStringBuffer_utf8Slice","utf8Slice","readStringBuffer_toString","toString","ReaderPrototype","int64","uint64","sint64","fixed64","sfixed64","ieee754","ArrayImpl","Uint8Array","Array","create","Buffer","prototype","_slice","subarray","tag","val","int32","id","wireType","octet","uint32","sint32","bool","fixed32","sfixed32","readFloat","Float32Array","f32","f8b","float","readDouble","Float64Array","f64","double","bytes","constructor","skip","skipType","reset","finish","remain","BufferReaderPrototype","readStringBuffer","Object","readFloatLE","readDoubleLE","LongBitsPrototype","zero","zzEncode","fromNumber","sign","from","parseInt","fromString","low","high","unsigned","Boolean","fromHash","hash","toHash","mask","part0","part1","part2","isNode","global","process","versions","node","dcodeIO","isInteger","Number","isFinite","isString","isObject","longToHash","longFromHash","bits","fromBits","longNeq","props","target","descriptors","keys","forEach","key","prop","descriptor","ie8","ucKey","substring","toUpperCase","get","set","defineProperty","emptyArray","freeze","emptyObject","Op","fn","next","noop","State","writer","head","tail","states","writeByte","writeVarint32","writeVarint64","writeFixed32","writeFloatBuffer","writeFloatLE","writeDoubleBuffer","writeDoubleLE","writeBytesBuffer","copy","WriterPrototype","push","op","writeFloat","writeDouble","writeBytes","fork","ldelim","allocUnsafe","BufferWriterPrototype","writeStringBuffer","utf8Write","byteLength"],"mappings":"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","file":"protobuf.min.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o> 1,\r\n nBits = -7,\r\n i = isBE ? 0 : (nBytes - 1),\r\n d = isBE ? 1 : -1,\r\n s = buffer[offset + i];\r\n\r\n i += d;\r\n\r\n e = s & ((1 << (-nBits)) - 1);\r\n s >>= (-nBits);\r\n nBits += eLen;\r\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n m = e & ((1 << (-nBits)) - 1);\r\n e >>= (-nBits);\r\n nBits += mLen;\r\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8);\r\n\r\n if (e === 0) {\r\n e = 1 - eBias;\r\n } else if (e === eMax) {\r\n return m ? NaN : ((s ? -1 : 1) * Infinity);\r\n } else {\r\n m = m + Math.pow(2, mLen);\r\n e = e - eBias;\r\n }\r\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\r\n};\r\n\r\nexports.write = function writeIEEE754(buffer, value, offset, isBE, mLen, nBytes) {\r\n var e, m, c,\r\n eLen = nBytes * 8 - mLen - 1,\r\n eMax = (1 << eLen) - 1,\r\n eBias = eMax >> 1,\r\n rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0),\r\n i = isBE ? (nBytes - 1) : 0,\r\n d = isBE ? -1 : 1,\r\n s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\r\n\r\n value = Math.abs(value);\r\n\r\n if (isNaN(value) || value === Infinity) {\r\n m = isNaN(value) ? 1 : 0;\r\n e = eMax;\r\n } else {\r\n e = Math.floor(Math.log(value) / Math.LN2);\r\n if (value * (c = Math.pow(2, -e)) < 1) {\r\n e--;\r\n c *= 2;\r\n }\r\n if (e + eBias >= 1) {\r\n value += rt / c;\r\n } else {\r\n value += rt * Math.pow(2, 1 - eBias);\r\n }\r\n if (value * c >= 2) {\r\n e++;\r\n c /= 2;\r\n }\r\n\r\n if (e + eBias >= eMax) {\r\n m = 0;\r\n e = eMax;\r\n } else if (e + eBias >= 1) {\r\n m = (value * c - 1) * Math.pow(2, mLen);\r\n e = e + eBias;\r\n } else {\r\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\r\n e = 0;\r\n }\r\n }\r\n\r\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8);\r\n\r\n e = (e << mLen) | m;\r\n eLen += mLen;\r\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8);\r\n\r\n buffer[offset + i - d] |= s * 128;\r\n};\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal base64 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar base64 = exports;\r\n\r\n/**\r\n * Calculates the byte length of a base64 encoded string.\r\n * @param {string} string Base64 encoded string\r\n * @returns {number} Byte length\r\n */\r\nbase64.length = function length(string) {\r\n var p = string.length;\r\n if (!p)\r\n return 0;\r\n var n = 0;\r\n while (--p % 4 > 1 && string.charAt(p) === '=')\r\n ++n;\r\n return Math.ceil(string.length * 3) / 4 - n;\r\n};\r\n\r\n// Base64 encoding table\r\nvar b64 = [];\r\n\r\n// Base64 decoding table\r\nvar s64 = [];\r\n\r\n// 65..90, 97..122, 48..57, 43, 47\r\nfor (var i = 0; i < 64;)\r\n s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++;\r\n\r\n/**\r\n * Encodes a buffer to a base64 encoded string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} Base64 encoded string\r\n */\r\nbase64.encode = function encode(buffer, start, end) {\r\n var string = []; // alt: new Array(Math.ceil((end - start) / 3) * 4);\r\n var i = 0, // output index\r\n j = 0, // goto index\r\n t; // temporary\r\n while (start < end) {\r\n var b = buffer[start++];\r\n switch (j) {\r\n case 0:\r\n string[i++] = b64[b >> 2];\r\n t = (b & 3) << 4;\r\n j = 1;\r\n break;\r\n case 1:\r\n string[i++] = b64[t | b >> 4];\r\n t = (b & 15) << 2;\r\n j = 2;\r\n break;\r\n case 2:\r\n string[i++] = b64[t | b >> 6];\r\n string[i++] = b64[b & 63];\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j) {\r\n string[i++] = b64[t];\r\n string[i ] = 61;\r\n if (j === 1)\r\n string[i + 1] = 61;\r\n }\r\n return String.fromCharCode.apply(String, string);\r\n};\r\n\r\nvar invalidEncoding = \"invalid encoding\";\r\n\r\n/**\r\n * Decodes a base64 encoded string to a buffer.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Number of bytes written\r\n * @throws {Error} If encoding is invalid\r\n */\r\nbase64.decode = function decode(string, buffer, offset) {\r\n var start = offset;\r\n var j = 0, // goto index\r\n t; // temporary\r\n for (var i = 0; i < string.length;) {\r\n var c = string.charCodeAt(i++);\r\n if (c === 61 && j > 1)\r\n break;\r\n if ((c = s64[c]) === undefined)\r\n throw Error(invalidEncoding);\r\n switch (j) {\r\n case 0:\r\n t = c;\r\n j = 1;\r\n break;\r\n case 1:\r\n buffer[offset++] = t << 2 | (c & 48) >> 4;\r\n t = c;\r\n j = 2;\r\n break;\r\n case 2:\r\n buffer[offset++] = (t & 15) << 4 | (c & 60) >> 2;\r\n t = c;\r\n j = 3;\r\n break;\r\n case 3:\r\n buffer[offset++] = (t & 3) << 6 | c;\r\n j = 0;\r\n break;\r\n }\r\n }\r\n if (j === 1)\r\n throw Error(invalidEncoding);\r\n return offset - start;\r\n};\r\n","\"use strict\";\r\nmodule.exports = pool;\r\n\r\n/**\r\n * An allocator as used by {@link util.pool}.\r\n * @typedef PoolAllocator\r\n * @type {function}\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\n\r\n/**\r\n * A slicer as used by {@link util.pool}.\r\n * @typedef PoolSlicer\r\n * @type {function}\r\n * @param {number} start Start offset\r\n * @param {number} end End offset\r\n * @returns {Uint8Array} Buffer slice\r\n * @this {Uint8Array}\r\n */\r\n\r\n/**\r\n * A general purpose buffer pool.\r\n * @memberof util\r\n * @function\r\n * @param {PoolAllocator} alloc Allocator\r\n * @param {PoolSlicer} slice Slicer\r\n * @param {number} [size=8192] Slab size\r\n * @returns {PoolAllocator} Pooled allocator\r\n */\r\nfunction pool(alloc, slice, size) {\r\n var SIZE = size || 8192;\r\n var MAX = SIZE >>> 1;\r\n var slab = null;\r\n var offset = SIZE;\r\n return function pool_alloc(size) {\r\n if (size > MAX)\r\n return alloc(size);\r\n if (offset + size > SIZE) {\r\n slab = alloc(SIZE);\r\n offset = 0;\r\n }\r\n var buf = slice.call(slab, offset, offset += size);\r\n if (offset & 7) // align to 32 bit\r\n offset = (offset | 7) + 1;\r\n return buf;\r\n };\r\n}\r\n","\"use strict\";\r\n\r\n/**\r\n * A minimal UTF8 implementation for number arrays.\r\n * @memberof util\r\n * @namespace\r\n */\r\nvar utf8 = exports;\r\n\r\n/**\r\n * Calculates the UTF8 byte length of a string.\r\n * @param {string} string String\r\n * @returns {number} Byte length\r\n */\r\nutf8.length = function length(string) {\r\n var len = 0,\r\n c = 0;\r\n for (var i = 0; i < string.length; ++i) {\r\n c = string.charCodeAt(i);\r\n if (c < 128)\r\n len += 1;\r\n else if (c < 2048)\r\n len += 2;\r\n else if ((c & 0xFC00) === 0xD800 && (string.charCodeAt(i + 1) & 0xFC00) === 0xDC00) {\r\n ++i;\r\n len += 4;\r\n } else\r\n len += 3;\r\n }\r\n return len;\r\n};\r\n\r\n/**\r\n * Reads UTF8 bytes as a string.\r\n * @param {Uint8Array} buffer Source buffer\r\n * @param {number} start Source start\r\n * @param {number} end Source end\r\n * @returns {string} String read\r\n */\r\nutf8.read = function(buffer, start, end) {\r\n var len = end - start;\r\n if (len < 1)\r\n return \"\";\r\n var string = [],\r\n i = 0, // char offset\r\n t; // temporary\r\n while (start < end) {\r\n t = buffer[start++];\r\n if (t < 128)\r\n string[i++] = t;\r\n else if (t > 191 && t < 224)\r\n string[i++] = (t & 31) << 6 | buffer[start++] & 63;\r\n else if (t > 239 && t < 365) {\r\n t = ((t & 7) << 18 | (buffer[start++] & 63) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63) - 0x10000;\r\n string[i++] = 0xD800 + (t >> 10);\r\n string[i++] = 0xDC00 + (t & 1023);\r\n } else\r\n string[i++] = (t & 15) << 12 | (buffer[start++] & 63) << 6 | buffer[start++] & 63;\r\n }\r\n return String.fromCharCode.apply(String, string.slice(0, i));\r\n};\r\n\r\n/**\r\n * Writes a string as UTF8 bytes.\r\n * @param {string} string Source string\r\n * @param {Uint8Array} buffer Destination buffer\r\n * @param {number} offset Destination offset\r\n * @returns {number} Bytes written\r\n */\r\nutf8.write = function(string, buffer, offset) {\r\n var start = offset,\r\n c1, // character 1\r\n c2; // character 2\r\n for (var i = 0; i < string.length; ++i) {\r\n c1 = string.charCodeAt(i);\r\n if (c1 < 128) {\r\n buffer[offset++] = c1;\r\n } else if (c1 < 2048) {\r\n buffer[offset++] = c1 >> 6 | 192;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else if ((c1 & 0xFC00) === 0xD800 && ((c2 = string.charCodeAt(i + 1)) & 0xFC00) === 0xDC00) {\r\n c1 = 0x10000 + ((c1 & 0x03FF) << 10) + (c2 & 0x03FF);\r\n ++i;\r\n buffer[offset++] = c1 >> 18 | 240;\r\n buffer[offset++] = c1 >> 12 & 63 | 128;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n } else {\r\n buffer[offset++] = c1 >> 12 | 224;\r\n buffer[offset++] = c1 >> 6 & 63 | 128;\r\n buffer[offset++] = c1 & 63 | 128;\r\n }\r\n }\r\n return offset - start;\r\n};\r\n","// This file exports just the bare minimum required to work with statically generated code.\r\n// Can be used as a drop-in replacement for the full library as it has the same general structure.\r\nvar protobuf = exports;\r\n\r\nvar Writer = protobuf.Writer = require(9);\r\nprotobuf.BufferWriter = Writer.BufferWriter;\r\nvar Reader = protobuf.Reader = require(6);\r\nprotobuf.BufferReader = Reader.BufferReader;\r\nprotobuf.util = require(8);\r\nprotobuf.roots = {};\r\nprotobuf.configure = configure;\r\n\r\nfunction configure() {\r\n Reader._configure();\r\n}\r\n\r\n// Be nice to AMD\r\nif (typeof define === \"function\" && define.amd)\r\n define([\"long\"], function(Long) {\r\n if (Long) {\r\n protobuf.util.Long = Long;\r\n configure();\r\n }\r\n return protobuf;\r\n });\r\n","\"use strict\";\r\nmodule.exports = Reader;\r\n\r\nReader.BufferReader = BufferReader;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\nfunction indexOutOfRange(reader, writeLength) {\r\n return RangeError(\"index out of range: \" + reader.pos + \" + \" + (writeLength || 1) + \" > \" + reader.len);\r\n}\r\n\r\n/**\r\n * Constructs a new reader instance using the specified buffer.\r\n * @classdesc Wire format reader using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n * @param {Uint8Array} buffer Buffer to read from\r\n */\r\nfunction Reader(buffer) {\r\n \r\n /**\r\n * Read buffer.\r\n * @type {Uint8Array}\r\n */\r\n this.buf = buffer;\r\n\r\n /**\r\n * Read buffer position.\r\n * @type {number}\r\n */\r\n this.pos = 0;\r\n\r\n /**\r\n * Read buffer length.\r\n * @type {number}\r\n */\r\n this.len = buffer.length;\r\n}\r\n\r\n/**\r\n * Creates a new reader using the specified buffer.\r\n * @param {Uint8Array} buffer Buffer to read from\r\n * @returns {BufferReader|Reader} A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}\r\n */\r\nReader.create = function create(buffer) {\r\n return new (util.Buffer ? BufferReader : Reader)(buffer);\r\n};\r\n\r\n/** @alias Reader.prototype */\r\nvar ReaderPrototype = Reader.prototype;\r\n\r\nReaderPrototype._slice = ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice;\r\n\r\n/**\r\n * Reads a tag.\r\n * @returns {{id: number, wireType: number}} Field id and wire type\r\n */\r\nReaderPrototype.tag = function read_tag() {\r\n // deprecated internally, but remains for completeness\r\n var val = this.int32();\r\n return {\r\n id: val >>> 3,\r\n wireType: val & 7\r\n };\r\n};\r\n\r\n/**\r\n * Reads a varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.int32 = function read_int32() {\r\n // 1 byte\r\n var octet = this.buf[this.pos++],\r\n value = octet & 127;\r\n if (octet > 127) { // false if octet is undefined (pos >= len)\r\n // 2 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 7;\r\n if (octet > 127) {\r\n // 3 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 14;\r\n if (octet > 127) {\r\n // 4 bytes\r\n octet = this.buf[this.pos++];\r\n value |= (octet & 127) << 21;\r\n if (octet > 127) {\r\n // 5 bytes\r\n octet = this.buf[this.pos++];\r\n value |= octet << 28;\r\n if (octet > 127) {\r\n // 6..10 bytes (sign extended)\r\n this.pos += 5;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n if (this.pos > this.len) {\r\n this.pos = this.len;\r\n throw indexOutOfRange(this);\r\n }\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a varint as an unsigned 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.uint32 = function read_uint32() {\r\n return this.int32() >>> 0;\r\n};\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 32 bit value.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sint32 = function read_sint32() {\r\n var value = this.int32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readLongVarint() {\r\n var lo = 0, hi = 0,\r\n i = 0, b = 0;\r\n if (this.len - this.pos > 9) { // fast route\r\n for (i = 0; i < 4; ++i) {\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n } else {\r\n for (i = 0; i < 4; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << i * 7;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n lo |= (b & 127) << 28;\r\n hi |= (b & 127) >> 4;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n for (i = 0; i < 5; ++i) {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n b = this.buf[this.pos++];\r\n hi |= (b & 127) << i * 7 + 3;\r\n if (b < 128)\r\n return new LongBits(lo >>> 0, hi >>> 0);\r\n }\r\n }\r\n throw Error(\"invalid varint encoding\");\r\n}\r\n\r\nfunction read_int64_long() {\r\n return readLongVarint.call(this).toLong();\r\n}\r\n\r\nfunction read_int64_number() {\r\n return readLongVarint.call(this).toNumber();\r\n}\r\n\r\nfunction read_uint64_long() {\r\n return readLongVarint.call(this).toLong(true);\r\n}\r\n\r\nfunction read_uint64_number() {\r\n return readLongVarint.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sint64_long() {\r\n return readLongVarint.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sint64_number() {\r\n return readLongVarint.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads a varint as a signed 64 bit value.\r\n * @name Reader#int64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as an unsigned 64 bit value.\r\n * @name Reader#uint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a zig-zag encoded varint as a signed 64 bit value.\r\n * @name Reader#sint64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads a varint as a boolean.\r\n * @returns {boolean} Value read\r\n */\r\nReaderPrototype.bool = function read_bool() {\r\n return this.int32() !== 0;\r\n};\r\n\r\nfunction readFixed32(buf, end) {\r\n return buf[end - 4]\r\n | buf[end - 3] << 8\r\n | buf[end - 2] << 16\r\n | buf[end - 1] << 24;\r\n}\r\n\r\n/**\r\n * Reads fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.fixed32 = function read_fixed32() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n return readFixed32(this.buf, this.pos += 4);\r\n};\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 32 bits as a number.\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.sfixed32 = function read_sfixed32() {\r\n var value = this.fixed32();\r\n return value >>> 1 ^ -(value & 1);\r\n};\r\n\r\n/* eslint-disable no-invalid-this */\r\n\r\nfunction readFixed64(/* this: Reader */) {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n return new LongBits(readFixed32(this.buf, this.pos += 4), readFixed32(this.buf, this.pos += 4));\r\n}\r\n\r\nfunction read_fixed64_long() {\r\n return readFixed64.call(this).toLong(true);\r\n}\r\n\r\nfunction read_fixed64_number() {\r\n return readFixed64.call(this).toNumber(true);\r\n}\r\n\r\nfunction read_sfixed64_long() {\r\n return readFixed64.call(this).zzDecode().toLong();\r\n}\r\n\r\nfunction read_sfixed64_number() {\r\n return readFixed64.call(this).zzDecode().toNumber();\r\n}\r\n\r\n/* eslint-enable no-invalid-this */\r\n\r\n/**\r\n * Reads fixed 64 bits.\r\n * @name Reader#fixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\n/**\r\n * Reads zig-zag encoded fixed 64 bits.\r\n * @name Reader#sfixed64\r\n * @function\r\n * @returns {Long|number} Value read\r\n */\r\n\r\nvar readFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function readFloat_f32(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n return f32[0];\r\n }\r\n : function readFloat_f32_le(buf, pos) {\r\n f8b[3] = buf[pos ];\r\n f8b[2] = buf[pos + 1];\r\n f8b[1] = buf[pos + 2];\r\n f8b[0] = buf[pos + 3];\r\n return f32[0];\r\n };\r\n })()\r\n : function readFloat_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Reads a float (32 bit) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.float = function read_float() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readFloat(this.buf, this.pos);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nvar readDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function readDouble_f64(buf, pos) {\r\n f8b[0] = buf[pos ];\r\n f8b[1] = buf[pos + 1];\r\n f8b[2] = buf[pos + 2];\r\n f8b[3] = buf[pos + 3];\r\n f8b[4] = buf[pos + 4];\r\n f8b[5] = buf[pos + 5];\r\n f8b[6] = buf[pos + 6];\r\n f8b[7] = buf[pos + 7];\r\n return f64[0];\r\n }\r\n : function readDouble_f64_le(buf, pos) {\r\n f8b[7] = buf[pos ];\r\n f8b[6] = buf[pos + 1];\r\n f8b[5] = buf[pos + 2];\r\n f8b[4] = buf[pos + 3];\r\n f8b[3] = buf[pos + 4];\r\n f8b[2] = buf[pos + 5];\r\n f8b[1] = buf[pos + 6];\r\n f8b[0] = buf[pos + 7];\r\n return f64[0];\r\n };\r\n })()\r\n : function readDouble_ieee754(buf, pos) {\r\n return ieee754.read(buf, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Reads a double (64 bit float) as a number.\r\n * @function\r\n * @returns {number} Value read\r\n */\r\nReaderPrototype.double = function read_double() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = readDouble(this.buf, this.pos);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\n/**\r\n * Reads a sequence of bytes preceeded by its length as a varint.\r\n * @returns {Uint8Array} Value read\r\n */\r\nReaderPrototype.bytes = function read_bytes() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return start === end // fix for IE 10/Win8 and others' subarray returning array of size 1\r\n ? new this.buf.constructor(0)\r\n : this._slice.call(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * Reads a string preceeded by its byte length as a varint.\r\n * @returns {string} Value read\r\n */\r\nReaderPrototype.string = function read_string() {\r\n var bytes = this.bytes();\r\n return utf8.read(bytes, 0, bytes.length);\r\n};\r\n\r\n/**\r\n * Skips the specified number of bytes if specified, otherwise skips a varint.\r\n * @param {number} [length] Length if known, otherwise a varint is assumed\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skip = function skip(length) {\r\n if (length === undefined) {\r\n do {\r\n if (this.pos >= this.len)\r\n throw indexOutOfRange(this);\r\n } while (this.buf[this.pos++] & 128);\r\n } else {\r\n if (this.pos + length > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Skips the next element of the specified wire type.\r\n * @param {number} wireType Wire type received\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.skipType = function(wireType) {\r\n switch (wireType) {\r\n case 0:\r\n this.skip();\r\n break;\r\n case 1:\r\n this.skip(8);\r\n break;\r\n case 2:\r\n this.skip(this.uint32());\r\n break;\r\n case 3:\r\n do { // eslint-disable-line no-constant-condition\r\n wireType = this.int32() & 7;\r\n if (wireType === 4)\r\n break;\r\n this.skipType(wireType);\r\n } while (true);\r\n break;\r\n case 5:\r\n this.skip(4);\r\n break;\r\n default:\r\n throw Error(\"invalid wire type: \" + wireType);\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance and frees all resources.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Reader} `this`\r\n */\r\nReaderPrototype.reset = function reset(buffer) {\r\n if (buffer) {\r\n this.buf = buffer;\r\n this.len = buffer.length;\r\n } else {\r\n this.buf = null; // makes it throw\r\n this.len = 0;\r\n }\r\n this.pos = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of read operations, frees all resources and returns the remaining buffer.\r\n * @param {Uint8Array} [buffer] New buffer for a new sequence of read operations\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nReaderPrototype.finish = function finish(buffer) {\r\n var remain = this.pos\r\n ? this._slice.call(this.buf, this.pos)\r\n : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\n// One time function to initialize BufferReader with the now-known buffer implementation's slice method\r\nvar initBufferReader = function() {\r\n var Buffer = util.Buffer;\r\n if (!Buffer)\r\n throw Error(\"Buffer is not supported\");\r\n BufferReaderPrototype._slice = Buffer.prototype.slice;\r\n readStringBuffer = Buffer.prototype.utf8Slice // around forever, but not present in browser buffer\r\n ? readStringBuffer_utf8Slice\r\n : readStringBuffer_toString;\r\n initBufferReader = false;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer reader instance.\r\n * @classdesc Wire format reader using node buffers.\r\n * @extends Reader\r\n * @constructor\r\n * @param {Buffer} buffer Buffer to read from\r\n */\r\nfunction BufferReader(buffer) {\r\n if (initBufferReader)\r\n initBufferReader();\r\n Reader.call(this, buffer);\r\n}\r\n\r\n/** @alias BufferReader.prototype */\r\nvar BufferReaderPrototype = BufferReader.prototype = Object.create(Reader.prototype);\r\n\r\nBufferReaderPrototype.constructor = BufferReader;\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.float = function read_float_buffer() {\r\n if (this.pos + 4 > this.len)\r\n throw indexOutOfRange(this, 4);\r\n var value = this.buf.readFloatLE(this.pos, true);\r\n this.pos += 4;\r\n return value;\r\n};\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.double = function read_double_buffer() {\r\n if (this.pos + 8 > this.len)\r\n throw indexOutOfRange(this, 8);\r\n var value = this.buf.readDoubleLE(this.pos, true);\r\n this.pos += 8;\r\n return value;\r\n};\r\n\r\nvar readStringBuffer;\r\n\r\nfunction readStringBuffer_utf8Slice(buf, start, end) {\r\n return buf.utf8Slice(start, end); // fastest\r\n}\r\n\r\nfunction readStringBuffer_toString(buf, start, end) {\r\n return buf.toString(\"utf8\", start, end); // 2nd, again assertions\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.string = function read_string_buffer() {\r\n var length = this.int32() >>> 0,\r\n start = this.pos,\r\n end = this.pos + length;\r\n if (end > this.len)\r\n throw indexOutOfRange(this, length);\r\n this.pos += length;\r\n return readStringBuffer(this.buf, start, end);\r\n};\r\n\r\n/**\r\n * @override\r\n */\r\nBufferReaderPrototype.finish = function finish_buffer(buffer) {\r\n var remain = this.pos ? this.buf.slice(this.pos) : this.buf;\r\n this.reset(buffer);\r\n return remain;\r\n};\r\n\r\nfunction configure() {\r\n if (util.Long) {\r\n ReaderPrototype.int64 = read_int64_long;\r\n ReaderPrototype.uint64 = read_uint64_long;\r\n ReaderPrototype.sint64 = read_sint64_long;\r\n ReaderPrototype.fixed64 = read_fixed64_long;\r\n ReaderPrototype.sfixed64 = read_sfixed64_long;\r\n } else {\r\n ReaderPrototype.int64 = read_int64_number;\r\n ReaderPrototype.uint64 = read_uint64_number;\r\n ReaderPrototype.sint64 = read_sint64_number;\r\n ReaderPrototype.fixed64 = read_fixed64_number;\r\n ReaderPrototype.sfixed64 = read_sfixed64_number;\r\n }\r\n}\r\n\r\nReader._configure = configure;\r\n\r\nconfigure();\r\n","\"use strict\";\r\n\r\nmodule.exports = LongBits;\r\n\r\nvar util = require(8);\r\n\r\n/**\r\n * Any compatible Long instance.\r\n * @typedef Long\r\n * @type {Object}\r\n * @property {number} low Low bits\r\n * @property {number} high High bits\r\n * @property {boolean} unsigned Whether unsigned or not\r\n */\r\n\r\n/**\r\n * Constructs new long bits.\r\n * @classdesc Helper class for working with the low and high bits of a 64 bit value.\r\n * @memberof util\r\n * @constructor\r\n * @param {number} lo Low bits\r\n * @param {number} hi High bits\r\n */\r\nfunction LongBits(lo, hi) { // make sure to always call this with unsigned 32bits for proper optimization\r\n\r\n /**\r\n * Low bits.\r\n * @type {number}\r\n */\r\n this.lo = lo;\r\n\r\n /**\r\n * High bits.\r\n * @type {number}\r\n */\r\n this.hi = hi;\r\n}\r\n\r\n/** @alias util.LongBits.prototype */\r\nvar LongBitsPrototype = LongBits.prototype;\r\n\r\n/**\r\n * Zero bits.\r\n * @memberof util.LongBits\r\n * @type {util.LongBits}\r\n */\r\nvar zero = LongBits.zero = new LongBits(0, 0);\r\n\r\nzero.toNumber = function() { return 0; };\r\nzero.zzEncode = zero.zzDecode = function() { return this; };\r\nzero.length = function() { return 1; };\r\n\r\n/**\r\n * Constructs new long bits from the specified number.\r\n * @param {number} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.fromNumber = function fromNumber(value) {\r\n if (value === 0)\r\n return zero;\r\n var sign = value < 0;\r\n value = Math.abs(value);\r\n var lo = value >>> 0,\r\n hi = (value - lo) / 4294967296 >>> 0;\r\n if (sign) {\r\n hi = ~hi >>> 0;\r\n lo = ~lo >>> 0;\r\n if (++lo > 4294967295) {\r\n lo = 0;\r\n if (++hi > 4294967295)\r\n hi = 0;\r\n }\r\n }\r\n return new LongBits(lo, hi);\r\n};\r\n\r\n/**\r\n * Constructs new long bits from a number, long or string.\r\n * @param {Long|number|string} value Value\r\n * @returns {util.LongBits} Instance\r\n */\r\nLongBits.from = function from(value) {\r\n switch (typeof value) {\r\n case \"number\":\r\n return LongBits.fromNumber(value);\r\n case \"string\":\r\n if (util.Long)\r\n value = util.Long.fromString(value);\r\n // fallthrough\r\n else\r\n return LongBits.fromNumber(parseInt(value, 10));\r\n }\r\n return (value.low || value.high) && new LongBits(value.low >>> 0, value.high >>> 0) || zero;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a possibly unsafe JavaScript number.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {number} Possibly unsafe number\r\n */\r\nLongBitsPrototype.toNumber = function toNumber(unsigned) {\r\n if (!unsigned && this.hi >>> 31) {\r\n this.lo = ~this.lo + 1 >>> 0;\r\n this.hi = ~this.hi >>> 0;\r\n if (!this.lo)\r\n this.hi = this.hi + 1 >>> 0;\r\n return -(this.lo + this.hi * 4294967296);\r\n }\r\n return this.lo + this.hi * 4294967296;\r\n};\r\n\r\n/**\r\n * Converts this long bits to a long.\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long} Long\r\n */\r\nLongBitsPrototype.toLong = function toLong(unsigned) {\r\n return util.Long\r\n ? new util.Long(this.lo, this.hi, unsigned)\r\n : { low: this.lo, high: this.hi, unsigned: Boolean(unsigned) };\r\n};\r\n\r\nvar charCodeAt = String.prototype.charCodeAt;\r\n\r\n/**\r\n * Constructs new long bits from the specified 8 characters long hash.\r\n * @param {string} hash Hash\r\n * @returns {util.LongBits} Bits\r\n */\r\nLongBits.fromHash = function fromHash(hash) {\r\n return new LongBits(\r\n ( charCodeAt.call(hash, 0)\r\n | charCodeAt.call(hash, 1) << 8\r\n | charCodeAt.call(hash, 2) << 16\r\n | charCodeAt.call(hash, 3) << 24) >>> 0\r\n ,\r\n ( charCodeAt.call(hash, 4)\r\n | charCodeAt.call(hash, 5) << 8\r\n | charCodeAt.call(hash, 6) << 16\r\n | charCodeAt.call(hash, 7) << 24) >>> 0\r\n );\r\n};\r\n\r\n/**\r\n * Converts this long bits to a 8 characters long hash.\r\n * @returns {string} Hash\r\n */\r\nLongBitsPrototype.toHash = function toHash() {\r\n return String.fromCharCode(\r\n this.lo & 255,\r\n this.lo >>> 8 & 255,\r\n this.lo >>> 16 & 255,\r\n this.lo >>> 24 & 255,\r\n this.hi & 255,\r\n this.hi >>> 8 & 255,\r\n this.hi >>> 16 & 255,\r\n this.hi >>> 24 & 255\r\n );\r\n};\r\n\r\n/**\r\n * Zig-zag encodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzEncode = function zzEncode() {\r\n var mask = this.hi >> 31;\r\n this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0;\r\n this.lo = ( this.lo << 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Zig-zag decodes this long bits.\r\n * @returns {util.LongBits} `this`\r\n */\r\nLongBitsPrototype.zzDecode = function zzDecode() {\r\n var mask = -(this.lo & 1);\r\n this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0;\r\n this.hi = ( this.hi >>> 1 ^ mask) >>> 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Calculates the length of this longbits when encoded as a varint.\r\n * @returns {number} Length\r\n */\r\nLongBitsPrototype.length = function length() {\r\n var part0 = this.lo,\r\n part1 = (this.lo >>> 28 | this.hi << 4) >>> 0,\r\n part2 = this.hi >>> 24;\r\n if (part2 === 0) {\r\n if (part1 === 0)\r\n return part0 < 1 << 14\r\n ? part0 < 1 << 7 ? 1 : 2\r\n : part0 < 1 << 21 ? 3 : 4;\r\n return part1 < 1 << 14\r\n ? part1 < 1 << 7 ? 5 : 6\r\n : part1 < 1 << 21 ? 7 : 8;\r\n }\r\n return part2 < 1 << 7 ? 9 : 10;\r\n};\r\n","\"use strict\";\r\n\r\nvar util = exports;\r\n\r\nvar LongBits = util.LongBits = require(\"./longbits\");\r\n\r\nutil.base64 = require(\"@protobufjs/base64\");\r\nutil.utf8 = require(\"@protobufjs/utf8\");\r\nutil.pool = require(\"@protobufjs/pool\");\r\n\r\n/**\r\n * Whether running within node or not.\r\n * @memberof util\r\n * @type {boolean}\r\n */\r\nvar isNode = util.isNode = Boolean(global.process && global.process.versions && global.process.versions.node);\r\n\r\n/**\r\n * Optional buffer class to use.\r\n * If you assign any compatible buffer implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Buffer = null;\r\n\r\nif (isNode)\r\n try { util.Buffer = require(\"buffer\").Buffer; } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Optional Long class to use.\r\n * If you assign any compatible long implementation to this property, the library will use it.\r\n * @type {*}\r\n */\r\nutil.Long = global.dcodeIO && global.dcodeIO.Long || null;\r\n\r\nif (!util.Long && isNode)\r\n try { util.Long = require(\"long\"); } catch (e) {} // eslint-disable-line no-empty\r\n\r\n/**\r\n * Tests if the specified value is an integer.\r\n * @function\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is an integer\r\n */\r\nutil.isInteger = Number.isInteger || function isInteger(value) {\r\n return typeof value === \"number\" && isFinite(value) && Math.floor(value) === value;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a string.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a string\r\n */\r\nutil.isString = function isString(value) {\r\n return typeof value === \"string\" || value instanceof String;\r\n};\r\n\r\n/**\r\n * Tests if the specified value is a non-null object.\r\n * @param {*} value Value to test\r\n * @returns {boolean} `true` if the value is a non-null object\r\n */\r\nutil.isObject = function isObject(value) {\r\n return Boolean(value && typeof value === \"object\");\r\n};\r\n\r\n/**\r\n * Converts a number or long to an 8 characters long hash string.\r\n * @param {Long|number} value Value to convert\r\n * @returns {string} Hash\r\n */\r\nutil.longToHash = function longToHash(value) {\r\n return value\r\n ? LongBits.from(value).toHash()\r\n : \"\\0\\0\\0\\0\\0\\0\\0\\0\";\r\n};\r\n\r\n/**\r\n * Converts an 8 characters long hash string to a long or number.\r\n * @param {string} hash Hash\r\n * @param {boolean} [unsigned=false] Whether unsigned or not\r\n * @returns {Long|number} Original value\r\n */\r\nutil.longFromHash = function longFromHash(hash, unsigned) {\r\n var bits = LongBits.fromHash(hash);\r\n if (util.Long)\r\n return util.Long.fromBits(bits.lo, bits.hi, unsigned);\r\n return bits.toNumber(Boolean(unsigned));\r\n};\r\n\r\n/**\r\n * Tests if two possibly long values are not equal.\r\n * @param {number|Long} a First value\r\n * @param {number|Long} b Second value\r\n * @returns {boolean} `true` if not equal\r\n */\r\nutil.longNeq = function longNeq(a, b) {\r\n return typeof a === \"number\"\r\n ? typeof b === \"number\"\r\n ? a !== b\r\n : (a = LongBits.fromNumber(a)).lo !== b.low || a.hi !== b.high\r\n : typeof b === \"number\"\r\n ? (b = LongBits.fromNumber(b)).lo !== a.low || b.hi !== a.high\r\n : a.low !== b.low || a.high !== b.high;\r\n};\r\n\r\n/**\r\n * Defines the specified properties on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {Object} descriptors Property descriptors\r\n * @returns {undefined}\r\n */\r\nutil.props = function props(target, descriptors) {\r\n Object.keys(descriptors).forEach(function(key) {\r\n util.prop(target, key, descriptors[key]);\r\n });\r\n};\r\n\r\n/**\r\n * Defines the specified property on the specified target. Also adds getters and setters for non-ES5 environments.\r\n * @param {Object} target Target object\r\n * @param {string} key Property name\r\n * @param {Object} descriptor Property descriptor\r\n * @returns {undefined}\r\n */\r\nutil.prop = function prop(target, key, descriptor) {\r\n var ie8 = !-[1,];\r\n var ucKey = key.substring(0, 1).toUpperCase() + key.substring(1);\r\n if (descriptor.get)\r\n target[\"get\" + ucKey] = descriptor.get;\r\n if (descriptor.set)\r\n target[\"set\" + ucKey] = ie8\r\n ? function(value) {\r\n descriptor.set.call(this, value);\r\n this[key] = value;\r\n }\r\n : descriptor.set;\r\n if (ie8) {\r\n if (descriptor.value !== undefined)\r\n target[key] = descriptor.value;\r\n } else\r\n Object.defineProperty(target, key, descriptor);\r\n};\r\n\r\n/**\r\n * An immuable empty array.\r\n * @memberof util\r\n * @type {Array.<*>}\r\n */\r\nutil.emptyArray = Object.freeze([]);\r\n\r\n/**\r\n * An immutable empty object.\r\n * @type {Object}\r\n */\r\nutil.emptyObject = Object.freeze({});\r\n","\"use strict\";\r\nmodule.exports = Writer;\r\n\r\nWriter.BufferWriter = BufferWriter;\r\n\r\nvar util = require(8),\r\n ieee754 = require(1);\r\nvar LongBits = util.LongBits,\r\n base64 = util.base64,\r\n utf8 = util.utf8;\r\nvar ArrayImpl = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\r\n\r\n/**\r\n * Constructs a new writer operation instance.\r\n * @classdesc Scheduled writer operation.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {function(*, Uint8Array, number)} fn Function to call\r\n * @param {*} val Value to write\r\n * @param {number} len Value byte length\r\n * @private\r\n * @ignore\r\n */\r\nfunction Op(fn, val, len) {\r\n\r\n /**\r\n * Function to call.\r\n * @type {function(Uint8Array, number, *)}\r\n */\r\n this.fn = fn;\r\n\r\n /**\r\n * Value to write.\r\n * @type {*}\r\n */\r\n this.val = val;\r\n\r\n /**\r\n * Value byte length.\r\n * @type {number}\r\n */\r\n this.len = len;\r\n\r\n /**\r\n * Next operation.\r\n * @type {?Writer.Op}\r\n */\r\n this.next = null;\r\n}\r\n\r\nWriter.Op = Op;\r\n\r\nfunction noop() {} // eslint-disable-line no-empty-function\r\n\r\n/**\r\n * Constructs a new writer state instance.\r\n * @classdesc Copied writer state.\r\n * @memberof Writer\r\n * @constructor\r\n * @param {Writer} writer Writer to copy state from\r\n * @param {State} next Next state entry\r\n * @private\r\n * @ignore\r\n */\r\nfunction State(writer, next) {\r\n\r\n /**\r\n * Current head.\r\n * @type {Writer.Op}\r\n */\r\n this.head = writer.head;\r\n\r\n /**\r\n * Current tail.\r\n * @type {Writer.Op}\r\n */\r\n this.tail = writer.tail;\r\n\r\n /**\r\n * Current buffer length.\r\n * @type {number}\r\n */\r\n this.len = writer.len;\r\n\r\n /**\r\n * Next state.\r\n * @type {?State}\r\n */\r\n this.next = next;\r\n}\r\n\r\nWriter.State = State;\r\n\r\n/**\r\n * Constructs a new writer instance.\r\n * @classdesc Wire format writer using `Uint8Array` if available, otherwise `Array`.\r\n * @constructor\r\n */\r\nfunction Writer() {\r\n\r\n /**\r\n * Current length.\r\n * @type {number}\r\n */\r\n this.len = 0;\r\n\r\n /**\r\n * Operations head.\r\n * @type {Object}\r\n */\r\n this.head = new Op(noop, 0, 0);\r\n\r\n /**\r\n * Operations tail\r\n * @type {Object}\r\n */\r\n this.tail = this.head;\r\n\r\n /**\r\n * Linked forked states.\r\n * @type {?Object}\r\n */\r\n this.states = null;\r\n\r\n // When a value is written, the writer calculates its byte length and puts it into a linked\r\n // list of operations to perform when finish() is called. This both allows us to allocate\r\n // buffers of the exact required size and reduces the amount of work we have to do compared\r\n // to first calculating over objects and then encoding over objects. In our case, the encoding\r\n // part is just a linked list walk calling linked operations with already prepared values.\r\n}\r\n\r\n/**\r\n * Creates a new writer.\r\n * @returns {BufferWriter|Writer} A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}\r\n */\r\nWriter.create = function create() {\r\n return new (util.Buffer ? BufferWriter : Writer);\r\n};\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nWriter.alloc = function alloc(size) {\r\n return new ArrayImpl(size);\r\n};\r\n\r\n// Use Uint8Array buffer pool in the browser, just like node does with buffers\r\nif (ArrayImpl !== Array)\r\n Writer.alloc = util.pool(Writer.alloc, ArrayImpl.prototype.subarray || ArrayImpl.prototype.slice);\r\n\r\n/** @alias Writer.prototype */\r\nvar WriterPrototype = Writer.prototype;\r\n\r\n/**\r\n * Pushes a new operation to the queue.\r\n * @param {function(Uint8Array, number, *)} fn Function to call\r\n * @param {number} len Value byte length\r\n * @param {number} val Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.push = function push(fn, len, val) {\r\n var op = new Op(fn, val, len);\r\n this.tail.next = op;\r\n this.tail = op;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\nfunction writeByte(val, buf, pos) {\r\n buf[pos] = val & 255;\r\n}\r\n\r\n/**\r\n * Writes a tag.\r\n * @param {number} id Field id\r\n * @param {number} wireType Wire type\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.tag = function write_tag(id, wireType) {\r\n // deprecated internally, but remains for completeness\r\n return this.uint32(id << 3 | wireType & 7);\r\n};\r\n\r\nfunction writeVarint32(val, buf, pos) {\r\n while (val > 127) {\r\n buf[pos++] = val & 127 | 128;\r\n val >>>= 7;\r\n }\r\n buf[pos] = val;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 32 bit value as a varint.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.uint32 = function write_uint32(value) {\r\n value >>>= 0;\r\n return value < 128\r\n ? this.push(writeByte, 1, value)\r\n : this.push(writeVarint32,\r\n value < 16384 ? 2\r\n : value < 2097152 ? 3\r\n : value < 268435456 ? 4\r\n : 5\r\n , value);\r\n};\r\n\r\n/**\r\n * Writes a signed 32 bit value as a varint.\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.int32 = function write_int32(value) {\r\n return value < 0\r\n ? this.push(writeVarint64, 10, LongBits.fromNumber(value)) // 10 bytes per spec\r\n : this.uint32(value);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as a varint, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sint32 = function write_sint32(value) {\r\n return this.uint32(value << 1 ^ value >> 31);\r\n};\r\n\r\nfunction writeVarint64(val, buf, pos) {\r\n // tends to deoptimize. stays optimized when using bits directly.\r\n while (val.hi) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0;\r\n val.hi >>>= 7;\r\n }\r\n while (val.lo > 127) {\r\n buf[pos++] = val.lo & 127 | 128;\r\n val.lo = val.lo >>> 7;\r\n }\r\n buf[pos++] = val.lo;\r\n}\r\n\r\n/**\r\n * Writes an unsigned 64 bit value as a varint.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.uint64 = function write_uint64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint.\r\n * @function\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.int64 = WriterPrototype.uint64;\r\n\r\n/**\r\n * Writes a signed 64 bit value as a varint, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sint64 = function write_sint64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeVarint64, bits.length(), bits);\r\n};\r\n\r\n/**\r\n * Writes a boolish value as a varint.\r\n * @param {boolean} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bool = function write_bool(value) {\r\n return this.push(writeByte, 1, value ? 1 : 0);\r\n};\r\n\r\nfunction writeFixed32(val, buf, pos) {\r\n buf[pos++] = val & 255;\r\n buf[pos++] = val >>> 8 & 255;\r\n buf[pos++] = val >>> 16 & 255;\r\n buf[pos ] = val >>> 24;\r\n}\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fixed32 = function write_fixed32(value) {\r\n return this.push(writeFixed32, 4, value >>> 0);\r\n};\r\n\r\n/**\r\n * Writes a 32 bit value as fixed 32 bits, zig-zag encoded.\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.sfixed32 = function write_sfixed32(value) {\r\n return this.push(writeFixed32, 4, value << 1 ^ value >> 31);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.fixed64 = function write_fixed64(value) {\r\n var bits = LongBits.from(value);\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\n/**\r\n * Writes a 64 bit value as fixed 64 bits, zig-zag encoded.\r\n * @param {Long|number|string} value Value to write\r\n * @returns {Writer} `this`\r\n * @throws {TypeError} If `value` is a string and no long library is present.\r\n */\r\nWriterPrototype.sfixed64 = function write_sfixed64(value) {\r\n var bits = LongBits.from(value).zzEncode();\r\n return this.push(writeFixed32, 4, bits.lo).push(writeFixed32, 4, bits.hi);\r\n};\r\n\r\nvar writeFloat = typeof Float32Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f32 = new Float32Array(1),\r\n f8b = new Uint8Array(f32.buffer);\r\n f32[0] = -0;\r\n return f8b[3] // already le?\r\n ? function writeFloat_f32(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos ] = f8b[3];\r\n }\r\n : function writeFloat_f32_le(val, buf, pos) {\r\n f32[0] = val;\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeFloat_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 23, 4);\r\n };\r\n\r\n/**\r\n * Writes a float (32 bit).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.float = function write_float(value) {\r\n return this.push(writeFloat, 4, value);\r\n};\r\n\r\nvar writeDouble = typeof Float64Array !== \"undefined\"\r\n ? (function() { // eslint-disable-line wrap-iife\r\n var f64 = new Float64Array(1),\r\n f8b = new Uint8Array(f64.buffer);\r\n f64[0] = -0;\r\n return f8b[7] // already le?\r\n ? function writeDouble_f64(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[0];\r\n buf[pos++] = f8b[1];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[6];\r\n buf[pos ] = f8b[7];\r\n }\r\n : function writeDouble_f64_le(val, buf, pos) {\r\n f64[0] = val;\r\n buf[pos++] = f8b[7];\r\n buf[pos++] = f8b[6];\r\n buf[pos++] = f8b[5];\r\n buf[pos++] = f8b[4];\r\n buf[pos++] = f8b[3];\r\n buf[pos++] = f8b[2];\r\n buf[pos++] = f8b[1];\r\n buf[pos ] = f8b[0];\r\n };\r\n })()\r\n : function writeDouble_ieee754(val, buf, pos) {\r\n ieee754.write(buf, val, pos, false, 52, 8);\r\n };\r\n\r\n/**\r\n * Writes a double (64 bit float).\r\n * @function\r\n * @param {number} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.double = function write_double(value) {\r\n return this.push(writeDouble, 8, value);\r\n};\r\n\r\nvar writeBytes = ArrayImpl.prototype.set\r\n ? function writeBytes_set(val, buf, pos) {\r\n buf.set(val, pos);\r\n }\r\n : function writeBytes_for(val, buf, pos) {\r\n for (var i = 0; i < val.length; ++i)\r\n buf[pos + i] = val[i];\r\n };\r\n\r\n/**\r\n * Writes a sequence of bytes.\r\n * @param {Uint8Array|string} value Buffer or base64 encoded string to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.bytes = function write_bytes(value) {\r\n var len = value.length >>> 0;\r\n if (typeof value === \"string\" && len) {\r\n var buf = Writer.alloc(len = base64.length(value));\r\n base64.decode(value, buf, 0);\r\n value = buf;\r\n }\r\n return len\r\n ? this.uint32(len).push(writeBytes, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Writes a string.\r\n * @param {string} value Value to write\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.string = function write_string(value) {\r\n var len = utf8.length(value);\r\n return len\r\n ? this.uint32(len).push(utf8.write, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\n/**\r\n * Forks this writer's state by pushing it to a stack.\r\n * Calling {@link Writer#}, {@link Writer#reset} or {@link Writer#finish} resets the writer to the previous state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.fork = function fork() {\r\n this.states = new State(this, this.states);\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets this instance to the last state.\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.reset = function reset() {\r\n if (this.states) {\r\n this.head = this.states.head;\r\n this.tail = this.states.tail;\r\n this.len = this.states.len;\r\n this.states = this.states.next;\r\n } else {\r\n this.head = this.tail = new Op(noop, 0, 0);\r\n this.len = 0;\r\n }\r\n return this;\r\n};\r\n\r\n/**\r\n * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.\r\n * @param {number} [id] Id with wire type 2 to prepend as a tag where applicable\r\n * @returns {Writer} `this`\r\n */\r\nWriterPrototype.ldelim = function ldelim(id) {\r\n var head = this.head,\r\n tail = this.tail,\r\n len = this.len;\r\n this.reset();\r\n if (id !== undefined)\r\n this.uint32(id << 3 | 2);\r\n this.uint32(len);\r\n this.tail.next = head.next; // skip noop\r\n this.tail = tail;\r\n this.len += len;\r\n return this;\r\n};\r\n\r\n/**\r\n * Finishes the current sequence of write operations and frees all resources.\r\n * @returns {Uint8Array} Finished buffer\r\n */\r\nWriterPrototype.finish = function finish() {\r\n var head = this.head.next, // skip noop\r\n buf = this.constructor.alloc(this.len);\r\n this.reset();\r\n var pos = 0;\r\n while (head) {\r\n head.fn(head.val, buf, pos);\r\n pos += head.len;\r\n head = head.next;\r\n }\r\n return buf;\r\n};\r\n\r\n/**\r\n * Constructs a new buffer writer instance.\r\n * @classdesc Wire format writer using node buffers.\r\n * @exports BufferWriter\r\n * @extends Writer\r\n * @constructor\r\n */\r\nfunction BufferWriter() {\r\n Writer.call(this);\r\n}\r\n\r\n/**\r\n * Allocates a buffer of the specified size.\r\n * @param {number} size Buffer size\r\n * @returns {Uint8Array} Buffer\r\n */\r\nBufferWriter.alloc = function alloc_buffer(size) {\r\n BufferWriter.alloc = util.Buffer.allocUnsafe\r\n ? util.Buffer.allocUnsafe\r\n : function allocUnsafeNew(size) { return new util.Buffer(size); };\r\n return BufferWriter.alloc(size);\r\n};\r\n\r\n/** @alias BufferWriter.prototype */\r\nvar BufferWriterPrototype = BufferWriter.prototype = Object.create(Writer.prototype);\r\nBufferWriterPrototype.constructor = BufferWriter;\r\n\r\nfunction writeFloatBuffer(val, buf, pos) {\r\n buf.writeFloatLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float32Array === \"undefined\") // f32 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.float = function write_float_buffer(value) {\r\n return this.push(writeFloatBuffer, 4, value);\r\n};\r\n\r\nfunction writeDoubleBuffer(val, buf, pos) {\r\n buf.writeDoubleLE(val, pos, true);\r\n}\r\n\r\nif (typeof Float64Array === \"undefined\") // f64 is faster (node 6.9.1)\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.double = function write_double_buffer(value) {\r\n return this.push(writeDoubleBuffer, 8, value);\r\n};\r\n\r\nfunction writeBytesBuffer(val, buf, pos) {\r\n if (val.length)\r\n val.copy(buf, pos, 0, val.length);\r\n}\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.bytes = function write_bytes_buffer(value) {\r\n if (typeof value === \"string\")\r\n value = util.Buffer.from && util.Buffer.from(value, \"base64\") || new util.Buffer(value, \"base64\");\r\n var len = value.length >>> 0;\r\n return len\r\n ? this.uint32(len).push(writeBytesBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n\r\nvar writeStringBuffer = (function() { // eslint-disable-line wrap-iife\r\n return util.Buffer && util.Buffer.prototype.utf8Write // around forever, but not present in browser buffer\r\n ? function writeString_buffer_utf8Write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.utf8Write(val, pos);\r\n }\r\n : function writeString_buffer_write(val, buf, pos) {\r\n if (val.length < 40)\r\n utf8.write(val, buf, pos);\r\n else\r\n buf.write(val, pos);\r\n };\r\n // Note that the plain JS encoder is faster for short strings, probably because of redundant assertions.\r\n // For a raw utf8Write, the breaking point is about 20 characters, for write it is around 40 characters.\r\n // Unfortunately, this does not translate 1:1 to real use cases, hence the common \"good enough\" limit of 40.\r\n})();\r\n\r\n/**\r\n * @override\r\n */\r\nBufferWriterPrototype.string = function write_string_buffer(value) {\r\n var len = value.length < 40\r\n ? utf8.length(value)\r\n : util.Buffer.byteLength(value);\r\n return len\r\n ? this.uint32(len).push(writeStringBuffer, len, value)\r\n : this.push(writeByte, 1, 0);\r\n};\r\n"],"sourceRoot":"."} \ No newline at end of file diff --git a/runtime/index.js b/runtime/index.js index bce678745..4e24292e3 100644 --- a/runtime/index.js +++ b/runtime/index.js @@ -2,20 +2,18 @@ // Can be used as a drop-in replacement for the full library as it has the same general structure. var protobuf = exports; - var Writer = -protobuf.Writer = require("../src/writer"); +var Writer = protobuf.Writer = require("../src/writer"); protobuf.BufferWriter = Writer.BufferWriter; - var Reader = -protobuf.Reader = require("../src/reader"); +var Reader = protobuf.Reader = require("../src/reader"); protobuf.BufferReader = Reader.BufferReader; -protobuf.util = require("../src/util/runtime"); +protobuf.util = require("../src/util/runtime"); +protobuf.roots = {}; +protobuf.configure = configure; function configure() { Reader._configure(); } -protobuf.configure = configure; - // Be nice to AMD if (typeof define === "function" && define.amd) define(["long"], function(Long) {