diff --git a/.travis.yml b/.travis.yml index ced0467..233454e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,8 @@ +sudo: false + language: node_js + node_js: + - 6 + - 4 - 0.12 - - 4.2 -sudo: false diff --git a/dist/bytebuffer-dataview.js b/dist/bytebuffer-dataview.js index bb6235c..c4d04a2 100644 --- a/dist/bytebuffer-dataview.js +++ b/dist/bytebuffer-dataview.js @@ -509,18 +509,6 @@ return slice; }; - /** - * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. - * @function - * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets - * will be modified according to the performed read operation. - * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") - * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes - * written if omitted. - * @returns {!ByteBuffer} this - * @expose - */ - ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; // types/ints/int8 @@ -2137,6 +2125,18 @@ return this; }; + /** + * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. + * @function + * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets + * will be modified according to the performed read operation. + * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") + * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes + * written if omitted. + * @returns {!ByteBuffer} this + * @expose + */ + ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; /** * Enables or disables assertions of argument types and offsets. Assertions are enabled by default but you can opt to * disable them if your code already makes sure that everything is valid. diff --git a/dist/bytebuffer-dataview.min.js b/dist/bytebuffer-dataview.min.js index a35c7c5..6290102 100644 --- a/dist/bytebuffer-dataview.min.js +++ b/dist/bytebuffer-dataview.min.js @@ -4,16 +4,16 @@ Released under the Apache License, Version 2.0 see: https://github.com/dcodeIO/bytebuffer.js for details */ -(function(h,m){if("function"===typeof define&&define.amd)define(["long"],m);else if("function"===typeof require&&"object"===typeof module&&module&&module.exports){var s=module,f;try{f=require("long")}catch(d){}f=m(f);s.exports=f}else(h.dcodeIO=h.dcodeIO||{}).ByteBuffer=m(h.dcodeIO.Long)})(this,function(h){function m(a){var b=0;return function(){return ba)throw RangeError("Illegal capacity");b=!!b;c=!!c}this.buffer=0===a?t:new ArrayBuffer(a);this.view=0===a?null:new DataView(this.buffer);this.offset=0;this.markedOffset=-1;this.limit=a;this.littleEndian=b;this.noAssert=c};f.VERSION= -"5.0.1";f.LITTLE_ENDIAN=!0;f.BIG_ENDIAN=!1;f.DEFAULT_CAPACITY=16;f.DEFAULT_ENDIAN=f.BIG_ENDIAN;f.DEFAULT_NOASSERT=!1;f.Long=h||null;var d=f.prototype;Object.defineProperty(d,"__isByteBuffer__",{value:!0,enumerable:!1,configurable:!1});var t=new ArrayBuffer(0),u=String.fromCharCode;f.accessor=function(){return DataView};f.allocate=function(a,b,c){return new f(a,b,c)};f.concat=function(a,b,c,e){if("boolean"===typeof b||"string"!==typeof b)e=c,c=b,b=void 0;for(var k=0,d=0,g=a.length,p;d=p||(e.set((new Uint8Array(c.buffer)).subarray(c.offset,c.limit),b.offset),b.offset+=p);b.limit=b.offset;b.offset=0;return b};f.isByteBuffer=function(a){return!0===(a&&a.__isByteBuffer__)};f.type=function(){return ArrayBuffer};f.wrap=function(a,b,c,e){"string"!==typeof b&&(e=c,c=b,b=void 0);if("string"===typeof a)switch("undefined"=== +(function(h,l){if("function"===typeof define&&define.amd)define(["long"],l);else if("function"===typeof require&&"object"===typeof module&&module&&module.exports){h=module;try{var t=require("long")}catch(f){}l=l(t);h.exports=l}else(h.dcodeIO=h.dcodeIO||{}).ByteBuffer=l(h.dcodeIO.Long)})(this,function(h){function l(a){var b=0;return function(){return ba)throw RangeError("Illegal capacity");b=!!b;c=!!c}this.buffer=0===a?u:new ArrayBuffer(a);this.view=0===a?null:new DataView(this.buffer);this.offset=0;this.markedOffset=-1;this.limit=a;this.littleEndian=b;this.noAssert=c};f.VERSION= +"5.0.1";f.LITTLE_ENDIAN=!0;f.BIG_ENDIAN=!1;f.DEFAULT_CAPACITY=16;f.DEFAULT_ENDIAN=f.BIG_ENDIAN;f.DEFAULT_NOASSERT=!1;f.Long=h||null;var d=f.prototype;Object.defineProperty(d,"__isByteBuffer__",{value:!0,enumerable:!1,configurable:!1});var u=new ArrayBuffer(0),v=String.fromCharCode;f.accessor=function(){return DataView};f.allocate=function(a,b,c){return new f(a,b,c)};f.concat=function(a,b,c,e){if("boolean"===typeof b||"string"!==typeof b)e=c,c=b,b=void 0;for(var n=0,g=0,d=a.length,p;g=p||(e.set((new Uint8Array(c.buffer)).subarray(c.offset,c.limit),b.offset),b.offset+=p);b.limit=b.offset;b.offset=0;return b};f.isByteBuffer=function(a){return!0===(a&&a.__isByteBuffer__)};f.type=function(){return ArrayBuffer};f.wrap=function(a,b,c,e){"string"!==typeof b&&(e=c,c=b,b=void 0);if("string"===typeof a)switch("undefined"=== typeof b&&(b="utf8"),b){case "base64":return f.fromBase64(a,c);case "hex":return f.fromHex(a,c);case "binary":return f.fromBinary(a,c);case "utf8":return f.fromUTF8(a,c);case "debug":return f.fromDebug(a,c);default:throw Error("Unsupported encoding: "+b);}if(null===a||"object"!==typeof a)throw TypeError("Illegal buffer");if(f.isByteBuffer(a))return b=d.clone.call(a),b.markedOffset=-1,b;if(a instanceof Uint8Array)b=new f(0,c,e),0>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b,k=a.length,d=k>>3,g=0,f;for(b+=this.writeVarint32(k,b);d--;)f=!!a[g++]&1|(!!a[g++]&1)<<1|(!!a[g++]&1)<<2|(!!a[g++]&1)<<3|(!!a[g++]&1)<<4|(!!a[g++]&1)<<5|(!!a[g++]&1)<<6|(!!a[g++]&1)<<7,this.writeByte(f,b++);if(g>3,d=0,g=[];for(a+=c.length;k--;)c=this.readByte(a++),g[d++]=!!(c&1),g[d++]=!!(c&2),g[d++]=!!(c&4),g[d++]=!!(c&8),g[d++]=!!(c&16),g[d++]=!!(c&32),g[d++]=!!(c&64),g[d++]=!!(c&128);if(d>k++&1);b&&(this.offset=a);return g};d.readBytes=function(a,b){var c="undefined"=== -typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+"+a+") <= "+this.buffer.byteLength);}var e=this.slice(b,b+a);c&&(this.offset+=a);return e};d.writeBytes=d.append;d.writeInt8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)"); -a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=1;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);this.view.setInt8(b-1,a);c&&(this.offset+=1);return this};d.writeByte=d.writeInt8;d.readInt8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ +Array))throw TypeError("Illegal BitSet: Not an array");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b,n=a.length,g=n>>3,d=0;for(b+=this.writeVarint32(n,b);g--;){var f=!!a[d++]&1|(!!a[d++]&1)<<1|(!!a[d++]&1)<<2|(!!a[d++]&1)<<3|(!!a[d++]&1)<<4|(!!a[d++]&1)<<5|(!!a[d++]&1)<<6|(!!a[d++]&1)<<7;this.writeByte(f,b++)}if(d>3,d=0,f=[];for(a+=c.length;n--;)c=this.readByte(a++),f[d++]=!!(c&1),f[d++]=!!(c&2),f[d++]=!!(c&4),f[d++]=!!(c&8),f[d++]=!!(c&16),f[d++]=!!(c&32),f[d++]=!!(c&64),f[d++]=!!(c&128);if(d>n++&1);b&&(this.offset=a);return f};d.readBytes=function(a,b){var c="undefined"=== +typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+"+a+") <= "+this.buffer.byteLength);}b=this.slice(b,b+a);c&&(this.offset+=a);return b};d.writeInt8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!== +typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=1;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);this.view.setInt8(b-1,a);c&&(this.offset+=1);return this};d.writeByte=d.writeInt8;d.readInt8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}a=this.view.getInt8(a);b&&(this.offset+=1);return a};d.readByte=d.readInt8;d.writeUint8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>= 0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=1;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);this.view.setUint8(b-1,a);c&&(this.offset+=1);return this};d.writeUInt8=d.writeUint8;d.readUint8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ a+" (+1) <= "+this.buffer.byteLength);}a=this.view.getUint8(a);b&&(this.offset+=1);return a};d.readUInt8=d.readUint8;d.writeInt16=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength); @@ -34,55 +34,55 @@ a.low,!1));c&&(this.offset+=8);return this},d.writeUInt64=d.writeUint64,d.readUi d.readFloat32;d.writeFloat64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a)throw TypeError("Illegal value: "+a+" (not a number)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=8;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);this.view.setFloat64(b-8,a,this.littleEndian); c&&(this.offset+=8);return this};d.writeDouble=d.writeFloat64;d.readFloat64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}a=this.view.getFloat64(a,this.littleEndian);b&&(this.offset+=8);return a};d.readDouble=d.readFloat64;f.MAX_VARINT32_BYTES=5;f.calculateVarint32= function(a){a>>>=0;return 128>a?1:16384>a?2:2097152>a?3:268435456>a?4:5};f.zigZagEncode32=function(a){return((a|=0)<<1^a>>31)>>>0};f.zigZagDecode32=function(a){return a>>>1^-(a&1)|0};d.writeVarint32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+0) <= "+this.buffer.byteLength);}var e=f.calculateVarint32(a),k;b+=e;k=this.buffer.byteLength;b>k&&this.resize((k*=2)>b?k:b);b-=e;for(a>>>=0;128<=a;)k=a&127|128,this.view.setUint8(b++,k),a>>>=7;this.view.setUint8(b++,a);return c?(this.offset=b,this):e};d.writeVarint32ZigZag=function(a,b){return this.writeVarint32(f.zigZagEncode32(a),b)};d.readVarint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ -a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=0,e=0,k;do{if(!this.noAssert&&a>this.limit)throw a=Error("Truncated"),a.truncated=!0,a;k=this.view.getUint8(a++);5>c&&(e|=(k&127)<<7*c);++c}while(0!==(k&128));e|=0;return b?(this.offset=a,e):{value:e,length:c}};d.readVarint32ZigZag=function(a){a=this.readVarint32(a);"object"===typeof a?a.value=f.zigZagDecode32(a.value):a=f.zigZagDecode32(a);return a}; +b+" (+0) <= "+this.buffer.byteLength);}var e=f.calculateVarint32(a);b+=e;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=e;for(a>>>=0;128<=a;)d=a&127|128,this.view.setUint8(b++,d),a>>>=7;this.view.setUint8(b++,a);return c?(this.offset=b,this):e};d.writeVarint32ZigZag=function(a,b){return this.writeVarint32(f.zigZagEncode32(a),b)};d.readVarint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ +a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=0,e=0;do{if(!this.noAssert&&a>this.limit)throw a=Error("Truncated"),a.truncated=!0,a;var d=this.view.getUint8(a++);5>c&&(e|=(d&127)<<7*c);++c}while(0!==(d&128));e|=0;return b?(this.offset=a,e):{value:e,length:c}};d.readVarint32ZigZag=function(a){a=this.readVarint32(a);"object"===typeof a?a.value=f.zigZagDecode32(a.value):a=f.zigZagDecode32(a);return a}; h&&(f.MAX_VARINT64_BYTES=10,f.calculateVarint64=function(a){"number"===typeof a?a=h.fromNumber(a):"string"===typeof a&&(a=h.fromString(a));var b=a.toInt()>>>0,c=a.shiftRightUnsigned(28).toInt()>>>0;a=a.shiftRightUnsigned(56).toInt()>>>0;return 0==a?0==c?16384>b?128>b?1:2:2097152>b?3:4:16384>c?128>c?5:6:2097152>c?7:8:128>a?9:10},f.zigZagEncode64=function(a){"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());return a.shiftLeft(1).xor(a.shiftRight(63)).toUnsigned()}, f.zigZagDecode64=function(a){"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());return a.shiftRightUnsigned(1).xor(a.and(h.ONE).toSigned().negate()).toSigned()},d.writeVarint64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=h.fromNumber(a);else if("string"===typeof a)a=h.fromString(a);else if(!(a&&a instanceof h))throw TypeError("Illegal value: "+a+" (not an integer or Long)"); -if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());var e=f.calculateVarint64(a),k=a.toInt()>>>0,d=a.shiftRightUnsigned(28).toInt()>>>0,g=a.shiftRightUnsigned(56).toInt()>>>0;b+=e;var p=this.buffer.byteLength;b>p&&this.resize((p*= -2)>b?p:b);b-=e;switch(e){case 10:this.view.setUint8(b+9,g>>>7&1);case 9:this.view.setUint8(b+8,9!==e?g|128:g&127);case 8:this.view.setUint8(b+7,8!==e?d>>>21|128:d>>>21&127);case 7:this.view.setUint8(b+6,7!==e?d>>>14|128:d>>>14&127);case 6:this.view.setUint8(b+5,6!==e?d>>>7|128:d>>>7&127);case 5:this.view.setUint8(b+4,5!==e?d|128:d&127);case 4:this.view.setUint8(b+3,4!==e?k>>>21|128:k>>>21&127);case 3:this.view.setUint8(b+2,3!==e?k>>>14|128:k>>>14&127);case 2:this.view.setUint8(b+1,2!==e?k>>>7|128: -k>>>7&127);case 1:this.view.setUint8(b,1!==e?k|128:k&127)}return c?(this.offset+=e,this):e},d.writeVarint64ZigZag=function(a,b){return this.writeVarint64(f.zigZagEncode64(a),b)},d.readVarint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=0,k=0,d= -0,g=0,g=this.view.getUint8(a++),e=g&127;if(g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<7,g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<14,g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<21,g&128&&(g=this.view.getUint8(a++),k=g&127,g&128&&(g=this.view.getUint8(a++),k|=(g&127)<<7,g&128&&(g=this.view.getUint8(a++),k|=(g&127)<<14,g&128&&(g=this.view.getUint8(a++),k|=(g&127)<<21,g&128&&(g=this.view.getUint8(a++),d=g&127,g&128&&(g=this.view.getUint8(a++),d|=(g&127)<<7,g&128))))))))))throw Error("Buffer overrun"); -e=h.fromBits(e|k<<28,k>>>4|d<<24,!1);return b?(this.offset=a,e):{value:e,length:a-c}},d.readVarint64ZigZag=function(a){(a=this.readVarint64(a))&&a.value instanceof h?a.value=f.zigZagDecode64(a.value):a=f.zigZagDecode64(a);return a});d.writeCString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);var e,d=a.length;if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");for(e=0;e>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}d=n.calculateUTF16asUTF8(m(a))[1];b+=d+1;e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=d+1;n.encodeUTF16toUTF8(m(a),function(a){this.view.setUint8(b++,a)}.bind(this));this.view.setUint8(b++,0);return c?(this.offset=b,this):d};d.readCString=function(a){var b="undefined"===typeof a; -b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e,d=-1;n.decodeUTF8toUTF16(function(){if(0===d)return null;if(a>=this.limit)throw RangeError("Illegal range: Truncated data, "+a+" < "+this.limit);d=this.view.getUint8(a++);return 0===d?null:d}.bind(this),e=s(),!0);return b?(this.offset=a,e()): -{string:e(),length:a-c}};d.writeIString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b,d;d=n.calculateUTF16asUTF8(m(a),this.noAssert)[1];b+=4+d;var f=this.buffer.byteLength;b>f&&this.resize((f*= -2)>b?f:b);b-=4+d;this.view.setUint32(b,d,this.littleEndian);b+=4;n.encodeUTF16toUTF8(m(a),function(a){this.view.setUint8(b++,a)}.bind(this));if(b!==e+4+d)throw RangeError("Illegal range: Truncated data, "+b+" == "+(b+4+d));return c?(this.offset=b,this):b-e};d.readIString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -a+" (+4) <= "+this.buffer.byteLength);}var c=a,e=this.readUint32(a),e=this.readUTF8String(e,f.METRICS_BYTES,a+=4);a+=e.length;return b?(this.offset=a,e.string):{string:e.string,length:a-c}};f.METRICS_CHARS="c";f.METRICS_BYTES="b";d.writeUTF8String=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+0) <= "+this.buffer.byteLength);}var e,d=b;e=n.calculateUTF16asUTF8(m(a))[1];b+=e;var f=this.buffer.byteLength;b>f&&this.resize((f*=2)>b?f:b);b-=e;n.encodeUTF16toUTF8(m(a),function(a){this.view.setUint8(b++,a)}.bind(this));return c?(this.offset=b,this):b-d};d.writeString=d.writeUTF8String;f.calculateUTF8Chars=function(a){return n.calculateUTF16asUTF8(m(a))[0]};f.calculateUTF8Bytes=function(a){return n.calculateUTF16asUTF8(m(a))[1]};f.calculateString=f.calculateUTF8Bytes;d.readUTF8String=function(a, -b,c){"number"===typeof b&&(c=b,b=void 0);var e="undefined"===typeof c;e&&(c=this.offset);"undefined"===typeof b&&(b=f.METRICS_CHARS);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}var d=0,l=c,g;if(b===f.METRICS_CHARS){g=s(); -n.decodeUTF8(function(){return d>>=0;if(0>c||c+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+"+a+") <= "+this.buffer.byteLength); -}var p=c+a;n.decodeUTF8toUTF16(function(){return c>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b,d,l;d=n.calculateUTF16asUTF8(m(a),this.noAssert)[1];l=f.calculateVarint32(d);b+=l+d;var g=this.buffer.byteLength;b>g&&this.resize((g*=2)>b?g:b);b-=l+d;b+=this.writeVarint32(d,b);n.encodeUTF16toUTF8(m(a),function(a){this.view.setUint8(b++,a)}.bind(this));if(b!==e+d+l)throw RangeError("Illegal range: Truncated data, "+ -b+" == "+(b+d+l));return c?(this.offset=b,this):b-e};d.readVString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=this.readVarint32(a),e=this.readUTF8String(e.value,f.METRICS_BYTES,a+=e.length);a+=e.length;return b?(this.offset=a,e.string):{string:e.string, +if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());var e=f.calculateVarint64(a),d=a.toInt()>>>0,g=a.shiftRightUnsigned(28).toInt()>>>0;a=a.shiftRightUnsigned(56).toInt()>>>0;b+=e;var k=this.buffer.byteLength;b>k&&this.resize((k*= +2)>b?k:b);b-=e;switch(e){case 10:this.view.setUint8(b+9,a>>>7&1);case 9:this.view.setUint8(b+8,9!==e?a|128:a&127);case 8:this.view.setUint8(b+7,8!==e?g>>>21|128:g>>>21&127);case 7:this.view.setUint8(b+6,7!==e?g>>>14|128:g>>>14&127);case 6:this.view.setUint8(b+5,6!==e?g>>>7|128:g>>>7&127);case 5:this.view.setUint8(b+4,5!==e?g|128:g&127);case 4:this.view.setUint8(b+3,4!==e?d>>>21|128:d>>>21&127);case 3:this.view.setUint8(b+2,3!==e?d>>>14|128:d>>>14&127);case 2:this.view.setUint8(b+1,2!==e?d>>>7|128: +d>>>7&127);case 1:this.view.setUint8(b,1!==e?d|128:d&127)}return c?(this.offset+=e,this):e},d.writeVarint64ZigZag=function(a,b){return this.writeVarint64(f.zigZagEncode64(a),b)},d.readVarint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=0,d=0;var g= +this.view.getUint8(a++);var f=g&127;if(g&128&&(g=this.view.getUint8(a++),f|=(g&127)<<7,g&128&&(g=this.view.getUint8(a++),f|=(g&127)<<14,g&128&&(g=this.view.getUint8(a++),f|=(g&127)<<21,g&128&&(g=this.view.getUint8(a++),e=g&127,g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<7,g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<14,g&128&&(g=this.view.getUint8(a++),e|=(g&127)<<21,g&128&&(g=this.view.getUint8(a++),d=g&127,g&128&&(g=this.view.getUint8(a++),d|=(g&127)<<7,g&128))))))))))throw Error("Buffer overrun"); +f=h.fromBits(f|e<<28,e>>>4|d<<24,!1);return b?(this.offset=a,f):{value:f,length:a-c}},d.readVarint64ZigZag=function(a){(a=this.readVarint64(a))&&a.value instanceof h?a.value=f.zigZagDecode64(a.value):a=f.zigZagDecode64(a);return a});d.writeCString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);var e,d=a.length;if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");for(e=0;e>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}d=m.calculateUTF16asUTF8(l(a))[1];b+=d+1;e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=d+1;m.encodeUTF16toUTF8(l(a),function(a){this.view.setUint8(b++,a)}.bind(this));this.view.setUint8(b++,0);return c?(this.offset=b,this):d};d.readCString=function(a){var b="undefined"===typeof a; +b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e,d=-1;m.decodeUTF8toUTF16(function(){if(0===d)return null;if(a>=this.limit)throw RangeError("Illegal range: Truncated data, "+a+" < "+this.limit);d=this.view.getUint8(a++);return 0===d?null:d}.bind(this),e=t(),!0);return b?(this.offset=a,e()): +{string:e(),length:a-c}};d.writeIString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a),this.noAssert)[1];b+=4+d;var g=this.buffer.byteLength;b>g&& +this.resize((g*=2)>b?g:b);b-=4+d;this.view.setUint32(b,d,this.littleEndian);b+=4;m.encodeUTF16toUTF8(l(a),function(a){this.view.setUint8(b++,a)}.bind(this));if(b!==e+4+d)throw RangeError("Illegal range: Truncated data, "+b+" == "+(b+4+d));return c?(this.offset=b,this):b-e};d.readIString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +a+" (+4) <= "+this.buffer.byteLength);}var c=a,e=this.readUint32(a);e=this.readUTF8String(e,f.METRICS_BYTES,a+=4);a+=e.length;return b?(this.offset=a,e.string):{string:e.string,length:a-c}};f.METRICS_CHARS="c";f.METRICS_BYTES="b";d.writeUTF8String=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a))[1];b+=d;var g=this.buffer.byteLength;b>g&&this.resize((g*=2)>b?g:b);b-=d;m.encodeUTF16toUTF8(l(a),function(a){this.view.setUint8(b++,a)}.bind(this));return c?(this.offset=b,this):b-e};d.writeString=d.writeUTF8String;f.calculateUTF8Chars=function(a){return m.calculateUTF16asUTF8(l(a))[0]};f.calculateUTF8Bytes=function(a){return m.calculateUTF16asUTF8(l(a))[1]};f.calculateString=f.calculateUTF8Bytes;d.readUTF8String=function(a, +b,c){"number"===typeof b&&(c=b,b=void 0);var e="undefined"===typeof c;e&&(c=this.offset);"undefined"===typeof b&&(b=f.METRICS_CHARS);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}var d=0,g=c;if(b===f.METRICS_CHARS){var k= +t();m.decodeUTF8(function(){return d>>=0;if(0>c||c+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+"+a+") <= "+this.buffer.byteLength); +}var p=c+a;m.decodeUTF8toUTF16(function(){return c>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a),this.noAssert)[1];var g=f.calculateVarint32(d);b+=g+d;var k=this.buffer.byteLength;b>k&&this.resize((k*=2)>b?k:b);b-=g+d;b+=this.writeVarint32(d,b);m.encodeUTF16toUTF8(l(a),function(a){this.view.setUint8(b++,a)}.bind(this));if(b!==e+d+g)throw RangeError("Illegal range: Truncated data, "+ +b+" == "+(b+d+g));return c?(this.offset=b,this):b-e};d.readVString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=this.readVarint32(a);e=this.readUTF8String(e.value,f.METRICS_BYTES,a+=e.length);a+=e.length;return b?(this.offset=a,e.string):{string:e.string, length:a-c}};d.append=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var e="undefined"===typeof c;e&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}a instanceof f||(a=f.wrap(a,b));b=a.limit-a.offset;if(0>=b)return this;c+=b;var d=this.buffer.byteLength;c>d&&this.resize((d*=2)> -c?d:c);(new Uint8Array(this.buffer,c-b)).set((new Uint8Array(a.buffer)).subarray(a.offset,a.limit));a.offset+=b;e&&(this.offset+=b);return this};d.appendTo=function(a,b){a.append(this,b);return this};d.assert=function(a){this.noAssert=!a;return this};d.capacity=function(){return this.buffer.byteLength};d.clear=function(){this.offset=0;this.limit=this.buffer.byteLength;this.markedOffset=-1;return this};d.clone=function(a){var b=new f(0,this.littleEndian,this.noAssert);a?(b.buffer=new ArrayBuffer(this.buffer.byteLength), -(new Uint8Array(b.buffer)).set(this.buffer),b.view=new DataView(b.buffer)):(b.buffer=this.buffer,b.view=this.view);b.offset=this.offset;b.markedOffset=this.markedOffset;b.limit=this.limit;return b};d.compact=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a|| -a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(0===a&&b===this.buffer.byteLength)return this;var c=b-a;if(0===c)return this.buffer=t,this.view=null,0<=this.markedOffset&&(this.markedOffset-=a),this.limit=this.offset=0,this;var e=new ArrayBuffer(c);(new Uint8Array(e)).set((new Uint8Array(this.buffer)).subarray(a,b));this.buffer=e;this.view=new DataView(e);0<=this.markedOffset&&(this.markedOffset-=a);this.offset=0;this.limit=c;return this}; -d.copy=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return new f(0,this.littleEndian,this.noAssert);var c=b-a,e=new f(c,this.littleEndian, -this.noAssert);e.offset=0;e.limit=c;0<=e.markedOffset&&(e.markedOffset-=a);this.copyTo(e,0,a,b);return e};d.copyTo=function(a,b,c,e){var d,l;if(!this.noAssert&&!f.isByteBuffer(a))throw TypeError("Illegal target: Not a ByteBuffer");b=(l="undefined"===typeof b)?a.offset:b|0;c=(d="undefined"===typeof c)?this.offset:c|0;e="undefined"===typeof e?this.limit:e|0;if(0>b||b>a.buffer.byteLength)throw RangeError("Illegal target range: 0 <= "+b+" <= "+a.buffer.byteLength);if(0>c||e>this.buffer.byteLength)throw RangeError("Illegal source range: 0 <= "+ -c+" <= "+this.buffer.byteLength);var g=e-c;if(0===g)return a;a.ensureCapacity(b+g);(new Uint8Array(a.buffer)).set((new Uint8Array(this.buffer)).subarray(c,e),b);d&&(this.offset+=g);l&&(a.offset+=g);return this};d.ensureCapacity=function(a){var b=this.buffer.byteLength;return ba?b:a):this};d.fill=function(a,b,c){var e="undefined"===typeof b;e&&(b=this.offset);"string"===typeof a&&0>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer"); +b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(0===a&&b===this.buffer.byteLength)return this;var c=b-a;if(0===c)return this.buffer=u,this.view=null,0<=this.markedOffset&&(this.markedOffset-=a),this.limit=this.offset=0,this;var e=new ArrayBuffer(c);(new Uint8Array(e)).set((new Uint8Array(this.buffer)).subarray(a,b));this.buffer=e;this.view=new DataView(e);0<=this.markedOffset&&(this.markedOffset-=a);this.offset=0;this.limit= +c;return this};d.copy=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return new f(0,this.littleEndian,this.noAssert);var c=b-a,e=new f(c, +this.littleEndian,this.noAssert);e.offset=0;e.limit=c;0<=e.markedOffset&&(e.markedOffset-=a);this.copyTo(e,0,a,b);return e};d.copyTo=function(a,b,c,e){var d,g;if(!this.noAssert&&!f.isByteBuffer(a))throw TypeError("Illegal target: Not a ByteBuffer");b=(g="undefined"===typeof b)?a.offset:b|0;c=(d="undefined"===typeof c)?this.offset:c|0;e="undefined"===typeof e?this.limit:e|0;if(0>b||b>a.buffer.byteLength)throw RangeError("Illegal target range: 0 <= "+b+" <= "+a.buffer.byteLength);if(0>c||e>this.buffer.byteLength)throw RangeError("Illegal source range: 0 <= "+ +c+" <= "+this.buffer.byteLength);var k=e-c;if(0===k)return a;a.ensureCapacity(b+k);(new Uint8Array(a.buffer)).set((new Uint8Array(this.buffer)).subarray(c,e),b);d&&(this.offset+=k);g&&(a.offset+=k);return this};d.ensureCapacity=function(a){var b=this.buffer.byteLength;return ba?b:a):this};d.fill=function(a,b,c){var e="undefined"===typeof b;e&&(b=this.offset);"string"===typeof a&&0>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal end: Not an integer");c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(b>=c)return this;for(;b>>=0;if(0>a||a+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+0) <= "+this.buffer.byteLength);}this.markedOffset=a;return this};d.order=function(a){if(!this.noAssert&&"boolean"!==typeof a)throw TypeError("Illegal littleEndian: Not a boolean"); this.littleEndian=!!a;return this};d.LE=function(a){this.littleEndian="undefined"!==typeof a?!!a:!0;return this};d.BE=function(a){this.littleEndian="undefined"!==typeof a?!a:!1;return this};d.prepend=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var e="undefined"===typeof c;e&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -c+" (+0) <= "+this.buffer.byteLength);}a instanceof f||(a=f.wrap(a,b));b=a.limit-a.offset;if(0>=b)return this;var d=b-c;if(0a)throw RangeError("Illegal capacity: 0 <= "+a);}this.buffer.byteLength>>=0; if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return this;Array.prototype.reverse.call((new Uint8Array(this.buffer)).subarray(a,b));this.view=new DataView(this.buffer);return this};d.skip=function(a){if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0}var b=this.offset+ a;if(!this.noAssert&&(0>b||b>this.buffer.byteLength))throw RangeError("Illegal length: 0 <= "+this.offset+" + "+a+" <= "+this.buffer.byteLength);this.offset=b;return this};d.slice=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+ a+" <= "+b+" <= "+this.buffer.byteLength);}var c=this.clone();c.offset=a;c.limit=b;return c};d.toBuffer=function(a){var b=this.offset,c=this.limit;if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: Not an integer");b>>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal limit: Not an integer");c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(!a&&0===b&&c===this.buffer.byteLength)return this.buffer; -if(b===c)return t;a=new ArrayBuffer(c-b);(new Uint8Array(a)).set((new Uint8Array(this.buffer)).subarray(b,c),0);return a};d.toArrayBuffer=d.toBuffer;d.toString=function(a,b,c){if("undefined"===typeof a)return"ByteBufferAB_DataView(offset="+this.offset+",markedOffset="+this.markedOffset+",limit="+this.limit+",capacity="+this.capacity()+")";"number"===typeof a&&(c=b=a="utf8");switch(a){case "utf8":return this.toUTF8(b,c);case "base64":return this.toBase64(b,c);case "hex":return this.toHex(b,c);case "binary":return this.toBinary(b, -c);case "debug":return this.toDebug();case "columns":return this.toColumns();default:throw Error("Unsupported encoding: "+a);}};var v=function(){for(var a={},b=[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,43,47],c=[],e=0,d=b.length;e>2&63]),d=(e&3)<<4,null!==(e= -a())?(d|=e>>4&15,c(b[(d|e>>4&15)&63]),d=(e&15)<<2,null!==(e=a())?(c(b[(d|e>>6&3)&63]),c(b[e&63])):(c(b[d&63]),c(61))):(c(b[d&63]),c(61),c(61))};a.decode=function(a,b){function e(a){throw Error("Illegal character code: "+a);}for(var d,k,f;null!==(d=a());)if(k=c[d],"undefined"===typeof k&&e(d),null!==(d=a())&&(f=c[d],"undefined"===typeof f&&e(d),b(k<<2>>>0|(f&48)>>4),null!==(d=a()))){k=c[d];if("undefined"===typeof k)if(61===d)break;else e(d);b((f&15)<<4>>>0|(k&60)>>2);if(null!==(d=a())){f=c[d];if("undefined"=== -typeof f)if(61===d)break;else e(d);b((k&3)<<6>>>0|f)}}};a.test=function(a){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(a)};return a}();d.toBase64=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);a|=0;b|=0;if(0>a||b>this.capacity||a>b)throw RangeError("begin, end");var c;v.encode(function(){return aa||b>this.capacity()||a>b)throw RangeError("begin, end");if(a===b)return"";for(var c=[],e=[];ae?d+("0"+e.toString(16).toUpperCase()):d+e.toString(16).toUpperCase(),a&&(f+=32 -e?String.fromCharCode(e):"."));++b;if(a&&0d.length;)d+=" ";g+=d+f+"\n";d=f=""}d=b===this.offset&&b===this.limit?d+(b===this.markedOffset?"!":"|"):b===this.offset?d+(b===this.markedOffset?"[":"<"):b===this.limit?d+(b===this.markedOffset?"]":">"):d+(b===this.markedOffset?"'":a||0!==b&&b!==c?" ":"")}if(a&&" "!==d){for(;51>d.length;)d+=" ";g+=d+f+"\n"}return a?g:d};f.fromDebug=function(a,b,c){var e=a.length;b=new f((e+1)/3|0,b,c);for(var d=0,l=0,g,h=!1,m=!1,n=!1,r=!1,q=!1;d< -e;){switch(g=a.charAt(d++)){case "!":if(!c){if(m||n||r){q=!0;break}m=n=r=!0}b.offset=b.markedOffset=b.limit=l;h=!1;break;case "|":if(!c){if(m||r){q=!0;break}m=r=!0}b.offset=b.limit=l;h=!1;break;case "[":if(!c){if(m||n){q=!0;break}m=n=!0}b.offset=b.markedOffset=l;h=!1;break;case "<":if(!c){if(m){q=!0;break}m=!0}b.offset=l;h=!1;break;case "]":if(!c){if(r||n){q=!0;break}r=n=!0}b.limit=b.markedOffset=l;h=!1;break;case ">":if(!c){if(r){q=!0;break}r=!0}b.limit=l;h=!1;break;case "'":if(!c){if(n){q=!0;break}n= -!0}b.markedOffset=l;h=!1;break;case " ":h=!1;break;default:if(!c&&h){q=!0;break}g=parseInt(g+a.charAt(d++),16);if(!c&&(isNaN(g)||0>g||255>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}for(var c=Array(b-a),e;ae?c.push("0",e.toString(16)):c.push(e.toString(16));return c.join("")}; -f.fromHex=function(a,b,c){if(!c){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if(0!==a.length%2)throw TypeError("Illegal str: Length not a multiple of 2");}var e=a.length;b=new f(e/2|0,b);for(var d,h=0,g=0;hd||255e?c(e&127):(2048>e?c(e>>6&31|192):(65536>e?c(e>>12&15|224):(c(e>>18&7|240),c(e>>12&63|128)),c(e>>6&63|128)),c(e&63|128)),e=null},decodeUTF8:function(a,c){for(var e,d,f,g,h=function(a){a=a.slice(0,a.indexOf(null));var b=Error(a.toString());b.name="TruncatedError";b.bytes=a;throw b;};null!==(e=a());)if(0===(e&128))c(e);else if(192===(e&224))null===(d=a())&&h([e,d]),c((e&31)<<6|d&63);else if(224===(e&240))null!==(d=a())&&null!== -(f=a())||h([e,d,f]),c((e&15)<<12|(d&63)<<6|f&63);else if(240===(e&248))null!==(d=a())&&null!==(f=a())&&null!==(g=a())||h([e,d,f,g]),c((e&7)<<18|(d&63)<<12|(f&63)<<6|g&63);else throw RangeError("Illegal starting byte: "+e);},UTF16toUTF8:function(a,c){for(var e,d=null;null!==(e=null!==d?d:a());)55296<=e&&57343>=e&&null!==(d=a())&&56320<=d&&57343>=d?(c(1024*(e-55296)+d-56320+65536),d=null):c(e);null!==d&&c(d)},UTF8toUTF16:function(a,c){var d=null;"number"===typeof a&&(d=a,a=function(){return null}); -for(;null!==d||null!==(d=a());)65535>=d?c(d):(d-=65536,c((d>>10)+55296),c(d%1024+56320)),d=null},encodeUTF16toUTF8:function(b,c){a.UTF16toUTF8(b,function(b){a.encodeUTF8(b,c)})},decodeUTF8toUTF16:function(b,c){a.decodeUTF8(b,function(b){a.UTF8toUTF16(b,c)})},calculateCodePoint:function(a){return 128>a?1:2048>a?2:65536>a?3:4},calculateUTF8:function(a){for(var c,d=0;null!==(c=a());)d+=128>c?1:2048>c?2:65536>c?3:4;return d},calculateUTF16asUTF8:function(b){var c=0,d=0;a.UTF16toUTF8(b,function(a){++c; -d+=128>a?1:2048>a?2:65536>a?3:4});return[c,d]}};return a}();d.toUTF8=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}var c;try{n.decodeUTF8toUTF16(function(){return a< -b?this.view.getUint8(a++):null}.bind(this),c=s())}catch(d){if(a!==b)throw RangeError("Illegal range: Truncated data, "+a+" != "+b);}return c()};f.fromUTF8=function(a,b,c){if(!c&&"string"!==typeof a)throw TypeError("Illegal str: Not a string");var d=new f(n.calculateUTF16asUTF8(m(a),!0)[1],b,c),h=0;n.encodeUTF16toUTF8(m(a),function(a){d.view.setUint8(h++,a)});d.limit=h;return d};return f}); +if(b===c)return u;a=new ArrayBuffer(c-b);(new Uint8Array(a)).set((new Uint8Array(this.buffer)).subarray(b,c),0);return a};d.toArrayBuffer=d.toBuffer;d.toString=function(a,b,c){if("undefined"===typeof a)return"ByteBufferAB_DataView(offset="+this.offset+",markedOffset="+this.markedOffset+",limit="+this.limit+",capacity="+this.capacity()+")";"number"===typeof a&&(c=b=a="utf8");switch(a){case "utf8":return this.toUTF8(b,c);case "base64":return this.toBase64(b,c);case "hex":return this.toHex(b,c);case "binary":return this.toBinary(b, +c);case "debug":return this.toDebug();case "columns":return this.toColumns();default:throw Error("Unsupported encoding: "+a);}};var w=function(){for(var a={},b=[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,43,47],c=[],e=0,d=b.length;e>2&63]),d=(e&3)<<4,null!==(e= +a())?(d|=e>>4&15,c(b[(d|e>>4&15)&63]),d=(e&15)<<2,null!==(e=a())?(c(b[(d|e>>6&3)&63]),c(b[e&63])):(c(b[d&63]),c(61))):(c(b[d&63]),c(61),c(61))};a.decode=function(a,b){function e(a){throw Error("Illegal character code: "+a);}for(var d,f,g;null!==(d=a());)if(f=c[d],"undefined"===typeof f&&e(d),null!==(d=a())&&(g=c[d],"undefined"===typeof g&&e(d),b(f<<2>>>0|(g&48)>>4),null!==(d=a()))){f=c[d];if("undefined"===typeof f)if(61===d)break;else e(d);b((g&15)<<4>>>0|(f&60)>>2);if(null!==(d=a())){g=c[d];if("undefined"=== +typeof g)if(61===d)break;else e(d);b((f&3)<<6>>>0|g)}}};a.test=function(a){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(a)};return a}();d.toBase64=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);a|=0;b|=0;if(0>a||b>this.capacity||a>b)throw RangeError("begin, end");var c;w.encode(function(){return aa||b>this.capacity()||a>b)throw RangeError("begin, end");if(a===b)return"";for(var c=[],e=[];ae?d+("0"+e.toString(16).toUpperCase()):d+e.toString(16).toUpperCase(),a&&(f+=32e? +String.fromCharCode(e):"."));++b;if(a&&0d.length;)d+=" ";k+=d+f+"\n";d=f=""}d=b===this.offset&&b===this.limit?d+(b===this.markedOffset?"!":"|"):b===this.offset?d+(b===this.markedOffset?"[":"<"):b===this.limit?d+(b===this.markedOffset?"]":">"):d+(b===this.markedOffset?"'":a||0!==b&&b!==c?" ":"")}if(a&&" "!==d){for(;51>d.length;)d+=" ";k+=d+f+"\n"}return a?k:d};f.fromDebug=function(a,b,c){var e=a.length;b=new f((e+1)/3|0,b,c);for(var d=0,g=0,k,h=!1,l=!1,m=!1,r=!1,q=!1;d< +e;){switch(k=a.charAt(d++)){case "!":if(!c){if(l||m||r){q=!0;break}l=m=r=!0}b.offset=b.markedOffset=b.limit=g;h=!1;break;case "|":if(!c){if(l||r){q=!0;break}l=r=!0}b.offset=b.limit=g;h=!1;break;case "[":if(!c){if(l||m){q=!0;break}l=m=!0}b.offset=b.markedOffset=g;h=!1;break;case "<":if(!c){if(l){q=!0;break}l=!0}b.offset=g;h=!1;break;case "]":if(!c){if(r||m){q=!0;break}r=m=!0}b.limit=b.markedOffset=g;h=!1;break;case ">":if(!c){if(r){q=!0;break}r=!0}b.limit=g;h=!1;break;case "'":if(!c){if(m){q=!0;break}m= +!0}b.markedOffset=g;h=!1;break;case " ":h=!1;break;default:if(!c&&h)q=!0;else{k=parseInt(k+a.charAt(d++),16);if(!c&&(isNaN(k)||0>k||255>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}for(var c=Array(b-a),d;ad?c.push("0",d.toString(16)):c.push(d.toString(16));return c.join("")}; +f.fromHex=function(a,b,c){if(!c){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if(0!==a.length%2)throw TypeError("Illegal str: Length not a multiple of 2");}var d=a.length;b=new f(d/2|0,b);for(var h,g=0,k=0;gh||255b?c(b&127):(2048>b?c(b>>6&31|192):65536>b?(c(b>>12&15|224),c(b>>6&63|128)):(c(b>>18&7|240),c(b>>12&63|128),c(b>>6&63|128)),c(b&63|128)),b=null},decodeUTF8:function(a,c){for(var b,d,f,h,l=function(a){a=a.slice(0,a.indexOf(null));var b=Error(a.toString());b.name="TruncatedError";b.bytes=a;throw b;};null!==(b=a());)if(0===(b&128))c(b);else if(192===(b&224))null===(d=a())&&l([b,d]),c((b&31)<<6|d&63);else if(224===(b&240))null!== +(d=a())&&null!==(f=a())||l([b,d,f]),c((b&15)<<12|(d&63)<<6|f&63);else if(240===(b&248))null!==(d=a())&&null!==(f=a())&&null!==(h=a())||l([b,d,f,h]),c((b&7)<<18|(d&63)<<12|(f&63)<<6|h&63);else throw RangeError("Illegal starting byte: "+b);},UTF16toUTF8:function(a,c){for(var b,d=null;null!==(b=null!==d?d:a());)55296<=b&&57343>=b&&null!==(d=a())&&56320<=d&&57343>=d?(c(1024*(b-55296)+d-56320+65536),d=null):c(b);null!==d&&c(d)},UTF8toUTF16:function(a,c){var b=null;"number"===typeof a&&(b=a,a=function(){return null}); +for(;null!==b||null!==(b=a());)65535>=b?c(b):(b-=65536,c((b>>10)+55296),c(b%1024+56320)),b=null},encodeUTF16toUTF8:function(b,c){a.UTF16toUTF8(b,function(b){a.encodeUTF8(b,c)})},decodeUTF8toUTF16:function(b,c){a.decodeUTF8(b,function(b){a.UTF8toUTF16(b,c)})},calculateCodePoint:function(a){return 128>a?1:2048>a?2:65536>a?3:4},calculateUTF8:function(a){for(var b,d=0;null!==(b=a());)d+=128>b?1:2048>b?2:65536>b?3:4;return d},calculateUTF16asUTF8:function(b){var c=0,d=0;a.UTF16toUTF8(b,function(a){++c; +d+=128>a?1:2048>a?2:65536>a?3:4});return[c,d]}};return a}();d.toUTF8=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}var c;try{m.decodeUTF8toUTF16(function(){return a< +b?this.view.getUint8(a++):null}.bind(this),c=t())}catch(e){if(a!==b)throw RangeError("Illegal range: Truncated data, "+a+" != "+b);}return c()};f.fromUTF8=function(a,b,c){if(!c&&"string"!==typeof a)throw TypeError("Illegal str: Not a string");var d=new f(m.calculateUTF16asUTF8(l(a),!0)[1],b,c),h=0;m.encodeUTF16toUTF8(l(a),function(a){d.view.setUint8(h++,a)});d.limit=h;return d};return f}); diff --git a/dist/bytebuffer-dataview.min.js.gz b/dist/bytebuffer-dataview.min.js.gz index e3f6b36..885731f 100644 Binary files a/dist/bytebuffer-dataview.min.js.gz and b/dist/bytebuffer-dataview.min.js.gz differ diff --git a/dist/bytebuffer-dataview.min.map b/dist/bytebuffer-dataview.min.map index d357379..775e3ca 100644 --- a/dist/bytebuffer-dataview.min.map +++ b/dist/bytebuffer-dataview.min.map @@ -2,7 +2,7 @@ "version":3, "file":"", "lineCount":88, -"mappings":"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", +"mappings":"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", "sources":["dist/bytebuffer-dataview.js"], -"names":["global","factory","define","require","module","Long","e","stringSource","s","i","length","charCodeAt","stringDestination","cs","ps","arguments","join","stringFromCharCode","apply","String","push","Array","prototype","ByteBuffer","capacity","littleEndian","noAssert","DEFAULT_CAPACITY","DEFAULT_ENDIAN","DEFAULT_NOASSERT","RangeError","buffer","EMPTY_BUFFER","ArrayBuffer","view","DataView","offset","markedOffset","limit","VERSION","LITTLE_ENDIAN","BIG_ENDIAN","ByteBufferPrototype","Object","defineProperty","value","enumerable","configurable","fromCharCode","accessor","ByteBuffer.accessor","allocate","ByteBuffer.allocate","concat","ByteBuffer.concat","buffers","encoding","undefined","k","isByteBuffer","wrap","bb","Uint8Array","bi","set","subarray","ByteBuffer.isByteBuffer","type","ByteBuffer.type","ByteBuffer.wrap","fromBase64","fromHex","fromBinary","fromUTF8","fromDebug","Error","TypeError","clone","call","byteOffset","byteLength","toString","setUint8","writeBitSet","ByteBufferPrototype.writeBitSet","relative","start","bits","bytes","bit","writeVarint32","writeByte","m","readBitSet","ByteBufferPrototype.readBitSet","ret","readVarint32","readByte","readBytes","ByteBufferPrototype.readBytes","slice","writeBytes","append","writeInt8","ByteBufferPrototype.writeInt8","capacity0","resize","setInt8","readInt8","ByteBufferPrototype.readInt8","getInt8","writeUint8","ByteBufferPrototype.writeUint8","capacity1","writeUInt8","readUint8","ByteBufferPrototype.readUint8","getUint8","readUInt8","writeInt16","ByteBufferPrototype.writeInt16","capacity2","setInt16","writeShort","readInt16","ByteBufferPrototype.readInt16","getInt16","readShort","writeUint16","ByteBufferPrototype.writeUint16","capacity3","setUint16","writeUInt16","readUint16","ByteBufferPrototype.readUint16","getUint16","readUInt16","writeInt32","ByteBufferPrototype.writeInt32","capacity4","setInt32","writeInt","readInt32","ByteBufferPrototype.readInt32","getInt32","readInt","writeUint32","ByteBufferPrototype.writeUint32","capacity5","setUint32","writeUInt32","readUint32","ByteBufferPrototype.readUint32","getUint32","readUInt32","writeInt64","ByteBufferPrototype.writeInt64","fromNumber","fromString","capacity6","low","high","writeLong","readInt64","ByteBufferPrototype.readInt64","readLong","writeUint64","ByteBufferPrototype.writeUint64","capacity7","writeUInt64","readUint64","ByteBufferPrototype.readUint64","readUInt64","writeFloat32","ByteBufferPrototype.writeFloat32","capacity8","setFloat32","writeFloat","readFloat32","ByteBufferPrototype.readFloat32","getFloat32","readFloat","writeFloat64","ByteBufferPrototype.writeFloat64","capacity9","setFloat64","writeDouble","readFloat64","ByteBufferPrototype.readFloat64","getFloat64","readDouble","MAX_VARINT32_BYTES","calculateVarint32","ByteBuffer.calculateVarint32","zigZagEncode32","ByteBuffer.zigZagEncode32","n","zigZagDecode32","ByteBuffer.zigZagDecode32","ByteBufferPrototype.writeVarint32","size","b","capacity10","writeVarint32ZigZag","ByteBufferPrototype.writeVarint32ZigZag","ByteBufferPrototype.readVarint32","c","err","readVarint32ZigZag","ByteBufferPrototype.readVarint32ZigZag","val","MAX_VARINT64_BYTES","calculateVarint64","ByteBuffer.calculateVarint64","part0","toInt","part1","shiftRightUnsigned","part2","zigZagEncode64","ByteBuffer.zigZagEncode64","unsigned","toSigned","shiftLeft","xor","shiftRight","toUnsigned","zigZagDecode64","ByteBuffer.zigZagDecode64","and","ONE","negate","writeVarint64","ByteBufferPrototype.writeVarint64","capacity11","writeVarint64ZigZag","ByteBufferPrototype.writeVarint64ZigZag","readVarint64","ByteBufferPrototype.readVarint64","fromBits","readVarint64ZigZag","ByteBufferPrototype.readVarint64ZigZag","writeCString","ByteBufferPrototype.writeCString","str","utfx","calculateUTF16asUTF8","capacity12","encodeUTF16toUTF8","bind","readCString","ByteBufferPrototype.readCString","sd","decodeUTF8toUTF16","writeIString","ByteBufferPrototype.writeIString","capacity13","readIString","ByteBufferPrototype.readIString","len","readUTF8String","METRICS_BYTES","METRICS_CHARS","writeUTF8String","ByteBufferPrototype.writeUTF8String","capacity14","writeString","calculateUTF8Chars","ByteBuffer.calculateUTF8Chars","calculateUTF8Bytes","ByteBuffer.calculateUTF8Bytes","calculateString","ByteBufferPrototype.readUTF8String","metrics","decodeUTF8","cp","UTF8toUTF16","readString","writeVString","ByteBufferPrototype.writeVString","l","capacity15","readVString","ByteBufferPrototype.readVString","ByteBufferPrototype.append","source","capacity16","appendTo","ByteBufferPrototype.appendTo","target","assert","ByteBufferPrototype.assert","ByteBufferPrototype.capacity","clear","ByteBufferPrototype.clear","ByteBufferPrototype.clone","copy","compact","ByteBufferPrototype.compact","begin","end","ByteBufferPrototype.copy","copyTo","ByteBufferPrototype.copyTo","targetOffset","sourceOffset","sourceLimit","targetRelative","ensureCapacity","ByteBufferPrototype.ensureCapacity","current","fill","ByteBufferPrototype.fill","flip","ByteBufferPrototype.flip","mark","ByteBufferPrototype.mark","order","ByteBufferPrototype.order","LE","ByteBufferPrototype.LE","BE","ByteBufferPrototype.BE","bigEndian","prepend","ByteBufferPrototype.prepend","diff","arrayView","prependTo","ByteBufferPrototype.prependTo","printDebug","ByteBufferPrototype.printDebug","out","console","log","toDebug","remaining","ByteBufferPrototype.remaining","reset","ByteBufferPrototype.reset","ByteBufferPrototype.resize","reverse","ByteBufferPrototype.reverse","skip","ByteBufferPrototype.skip","ByteBufferPrototype.slice","toBuffer","ByteBufferPrototype.toBuffer","forceCopy","toArrayBuffer","ByteBufferPrototype.toString","toUTF8","toBase64","toHex","toBinary","toColumns","lxiv","aout","ain","encode","lxiv.encode","src","dst","t","decode","lxiv.decode","fail","t1","t2","test","lxiv.test","ByteBufferPrototype.toBase64","ByteBuffer.fromBase64","btoa","ByteBuffer.btoa","atob","ByteBuffer.atob","b64","ByteBufferPrototype.toBinary","chars","parts","ByteBuffer.fromBinary","charCode","ByteBufferPrototype.toDebug","columns","hex","asc","toUpperCase","ByteBuffer.fromDebug","j","ch","rs","ho","hm","hl","charAt","parseInt","isNaN","ByteBufferPrototype.toHex","ByteBuffer.fromHex","substring","isFinite","utfx.encodeUTF8","utfx.decodeUTF8","a","d","indexOf","name","utfx.UTF16toUTF8","c1","c2","utfx.UTF8toUTF16","utfx.encodeUTF16toUTF8","UTF16toUTF8","encodeUTF8","utfx.decodeUTF8toUTF16","utfx.calculateCodePoint","utfx.calculateUTF8","utfx.calculateUTF16asUTF8","ByteBufferPrototype.toUTF8","ByteBuffer.fromUTF8"] +"names":["global","factory","define","require","module","Long","e","stringSource","s","i","length","charCodeAt","stringDestination","cs","ps","arguments","join","stringFromCharCode","apply","String","push","Array","prototype","ByteBuffer","capacity","littleEndian","noAssert","DEFAULT_CAPACITY","DEFAULT_ENDIAN","DEFAULT_NOASSERT","RangeError","buffer","EMPTY_BUFFER","ArrayBuffer","view","DataView","offset","markedOffset","limit","VERSION","LITTLE_ENDIAN","BIG_ENDIAN","ByteBufferPrototype","Object","defineProperty","value","enumerable","configurable","fromCharCode","accessor","ByteBuffer.accessor","allocate","ByteBuffer.allocate","concat","ByteBuffer.concat","buffers","encoding","undefined","k","isByteBuffer","wrap","bb","Uint8Array","bi","set","subarray","ByteBuffer.isByteBuffer","type","ByteBuffer.type","ByteBuffer.wrap","fromBase64","fromHex","fromBinary","fromUTF8","fromDebug","Error","TypeError","clone","call","byteOffset","byteLength","toString","setUint8","writeBitSet","ByteBufferPrototype.writeBitSet","relative","start","bits","bytes","bit","writeVarint32","writeByte","m","readBitSet","ByteBufferPrototype.readBitSet","ret","readVarint32","readByte","readBytes","ByteBufferPrototype.readBytes","slice","writeInt8","ByteBufferPrototype.writeInt8","capacity0","resize","setInt8","readInt8","ByteBufferPrototype.readInt8","getInt8","writeUint8","ByteBufferPrototype.writeUint8","capacity1","writeUInt8","readUint8","ByteBufferPrototype.readUint8","getUint8","readUInt8","writeInt16","ByteBufferPrototype.writeInt16","capacity2","setInt16","writeShort","readInt16","ByteBufferPrototype.readInt16","getInt16","readShort","writeUint16","ByteBufferPrototype.writeUint16","capacity3","setUint16","writeUInt16","readUint16","ByteBufferPrototype.readUint16","getUint16","readUInt16","writeInt32","ByteBufferPrototype.writeInt32","capacity4","setInt32","writeInt","readInt32","ByteBufferPrototype.readInt32","getInt32","readInt","writeUint32","ByteBufferPrototype.writeUint32","capacity5","setUint32","writeUInt32","readUint32","ByteBufferPrototype.readUint32","getUint32","readUInt32","writeInt64","ByteBufferPrototype.writeInt64","fromNumber","fromString","capacity6","low","high","writeLong","readInt64","ByteBufferPrototype.readInt64","readLong","writeUint64","ByteBufferPrototype.writeUint64","capacity7","writeUInt64","readUint64","ByteBufferPrototype.readUint64","readUInt64","writeFloat32","ByteBufferPrototype.writeFloat32","capacity8","setFloat32","writeFloat","readFloat32","ByteBufferPrototype.readFloat32","getFloat32","readFloat","writeFloat64","ByteBufferPrototype.writeFloat64","capacity9","setFloat64","writeDouble","readFloat64","ByteBufferPrototype.readFloat64","getFloat64","readDouble","MAX_VARINT32_BYTES","calculateVarint32","ByteBuffer.calculateVarint32","zigZagEncode32","ByteBuffer.zigZagEncode32","n","zigZagDecode32","ByteBuffer.zigZagDecode32","ByteBufferPrototype.writeVarint32","size","capacity10","b","writeVarint32ZigZag","ByteBufferPrototype.writeVarint32ZigZag","ByteBufferPrototype.readVarint32","c","err","readVarint32ZigZag","ByteBufferPrototype.readVarint32ZigZag","val","MAX_VARINT64_BYTES","calculateVarint64","ByteBuffer.calculateVarint64","part0","toInt","part1","shiftRightUnsigned","part2","zigZagEncode64","ByteBuffer.zigZagEncode64","unsigned","toSigned","shiftLeft","xor","shiftRight","toUnsigned","zigZagDecode64","ByteBuffer.zigZagDecode64","and","ONE","negate","writeVarint64","ByteBufferPrototype.writeVarint64","capacity11","writeVarint64ZigZag","ByteBufferPrototype.writeVarint64ZigZag","readVarint64","ByteBufferPrototype.readVarint64","fromBits","readVarint64ZigZag","ByteBufferPrototype.readVarint64ZigZag","writeCString","ByteBufferPrototype.writeCString","str","utfx","calculateUTF16asUTF8","capacity12","encodeUTF16toUTF8","bind","readCString","ByteBufferPrototype.readCString","sd","decodeUTF8toUTF16","writeIString","ByteBufferPrototype.writeIString","capacity13","readIString","ByteBufferPrototype.readIString","len","readUTF8String","METRICS_BYTES","METRICS_CHARS","writeUTF8String","ByteBufferPrototype.writeUTF8String","capacity14","writeString","calculateUTF8Chars","ByteBuffer.calculateUTF8Chars","calculateUTF8Bytes","ByteBuffer.calculateUTF8Bytes","calculateString","ByteBufferPrototype.readUTF8String","metrics","decodeUTF8","cp","UTF8toUTF16","readString","writeVString","ByteBufferPrototype.writeVString","l","capacity15","readVString","ByteBufferPrototype.readVString","append","ByteBufferPrototype.append","source","capacity16","appendTo","ByteBufferPrototype.appendTo","target","writeBytes","assert","ByteBufferPrototype.assert","ByteBufferPrototype.capacity","clear","ByteBufferPrototype.clear","ByteBufferPrototype.clone","copy","compact","ByteBufferPrototype.compact","begin","end","ByteBufferPrototype.copy","copyTo","ByteBufferPrototype.copyTo","targetOffset","sourceOffset","sourceLimit","targetRelative","ensureCapacity","ByteBufferPrototype.ensureCapacity","current","fill","ByteBufferPrototype.fill","flip","ByteBufferPrototype.flip","mark","ByteBufferPrototype.mark","order","ByteBufferPrototype.order","LE","ByteBufferPrototype.LE","BE","ByteBufferPrototype.BE","bigEndian","prepend","ByteBufferPrototype.prepend","diff","arrayView","prependTo","ByteBufferPrototype.prependTo","printDebug","ByteBufferPrototype.printDebug","out","console","log","toDebug","remaining","ByteBufferPrototype.remaining","reset","ByteBufferPrototype.reset","ByteBufferPrototype.resize","reverse","ByteBufferPrototype.reverse","skip","ByteBufferPrototype.skip","ByteBufferPrototype.slice","toBuffer","ByteBufferPrototype.toBuffer","forceCopy","toArrayBuffer","ByteBufferPrototype.toString","toUTF8","toBase64","toHex","toBinary","toColumns","lxiv","aout","ain","encode","lxiv.encode","src","dst","t","decode","lxiv.decode","fail","t1","t2","test","lxiv.test","ByteBufferPrototype.toBase64","ByteBuffer.fromBase64","btoa","ByteBuffer.btoa","atob","ByteBuffer.atob","b64","ByteBufferPrototype.toBinary","chars","parts","ByteBuffer.fromBinary","charCode","ByteBufferPrototype.toDebug","columns","hex","asc","toUpperCase","ByteBuffer.fromDebug","j","ch","rs","ho","hm","hl","charAt","parseInt","isNaN","ByteBufferPrototype.toHex","ByteBuffer.fromHex","substring","isFinite","utfx.encodeUTF8","utfx.decodeUTF8","a","d","indexOf","name","utfx.UTF16toUTF8","c1","c2","utfx.UTF8toUTF16","utfx.encodeUTF16toUTF8","UTF16toUTF8","encodeUTF8","utfx.decodeUTF8toUTF16","utfx.calculateCodePoint","utfx.calculateUTF8","utfx.calculateUTF16asUTF8","ByteBufferPrototype.toUTF8","ByteBuffer.fromUTF8"] } diff --git a/dist/bytebuffer-node.js b/dist/bytebuffer-node.js index 93a7c46..70ba4f3 100644 --- a/dist/bytebuffer-node.js +++ b/dist/bytebuffer-node.js @@ -503,18 +503,6 @@ module.exports = (function() { return slice; }; - /** - * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. - * @function - * @param {!ByteBuffer|!Buffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its - * offsets will be modified according to the performed read operation. - * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") - * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes - * written if omitted. - * @returns {!ByteBuffer} this - * @expose - */ - ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; // types/ints/int8 @@ -2277,6 +2265,18 @@ module.exports = (function() { return this; }; + /** + * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. + * @function + * @param {!ByteBuffer|!Buffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its + * offsets will be modified according to the performed read operation. + * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") + * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes + * written if omitted. + * @returns {!ByteBuffer} this + * @expose + */ + ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; /** * Enables or disables assertions of argument types and offsets. Assertions are enabled by default but you can opt to * disable them if your code already makes sure that everything is valid. diff --git a/dist/bytebuffer.js b/dist/bytebuffer.js index bb3e3aa..8362fa3 100644 --- a/dist/bytebuffer.js +++ b/dist/bytebuffer.js @@ -508,18 +508,6 @@ return slice; }; - /** - * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. - * @function - * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets - * will be modified according to the performed read operation. - * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") - * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes - * written if omitted. - * @returns {!ByteBuffer} this - * @expose - */ - ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; // types/ints/int8 @@ -2422,6 +2410,18 @@ return this; }; + /** + * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. + * @function + * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets + * will be modified according to the performed read operation. + * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") + * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes + * written if omitted. + * @returns {!ByteBuffer} this + * @expose + */ + ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; /** * Enables or disables assertions of argument types and offsets. Assertions are enabled by default but you can opt to * disable them if your code already makes sure that everything is valid. diff --git a/dist/bytebuffer.min.js b/dist/bytebuffer.min.js index d9dfea7..11c798e 100644 --- a/dist/bytebuffer.min.js +++ b/dist/bytebuffer.min.js @@ -4,90 +4,91 @@ Released under the Apache License, Version 2.0 see: https://github.com/dcodeIO/bytebuffer.js for details */ -(function(k,m){if("function"===typeof define&&define.amd)define(["long"],m);else if("function"===typeof require&&"object"===typeof module&&module&&module.exports){var r=module,s;try{s=require("long")}catch(u){}s=m(s);r.exports=s}else(k.dcodeIO=k.dcodeIO||{}).ByteBuffer=m(k.dcodeIO.Long)})(this,function(k){function m(a){var b=0;return function(){return b>1,h=-7;f=c?f-1:0;var k=c?-1:1,p=a[b+f];f+=k;c=p&(1<<-h)-1;p>>=-h;for(h+=l;0>=-h;for(h+=d;0>1,p=23===f? -Math.pow(2,-24)-Math.pow(2,-77):0;l=d?0:l-1;var m=d?1:-1,n=0>b||0===b&&0>1/b?1:0;b=Math.abs(b);isNaN(b)||Infinity===b?(b=isNaN(b)?1:0,d=h):(d=Math.floor(Math.log(b)/Math.LN2),1>b*(g=Math.pow(2,-d))&&(d--,g*=2),b=1<=d+k?b+p/g:b+p*Math.pow(2,1-k),2<=b*g&&(d++,g/=2),d+k>=h?(b=0,d=h):1<=d+k?(b=(b*g-1)*Math.pow(2,f),d+=k):(b=b*Math.pow(2,k-1)*Math.pow(2,f),d=0));for(;8<=f;a[c+l]=b&255,l+=m,b/=256,f-=8);d=d<a)throw RangeError("Illegal capacity");b=!!b;c=!!c}this.buffer=0===a?v:new ArrayBuffer(a);this.view=0===a?null:new Uint8Array(this.buffer);this.offset=0;this.markedOffset=-1;this.limit=a;this.littleEndian=b;this.noAssert=c};h.VERSION="5.0.1";h.LITTLE_ENDIAN=!0;h.BIG_ENDIAN=!1;h.DEFAULT_CAPACITY=16;h.DEFAULT_ENDIAN=h.BIG_ENDIAN;h.DEFAULT_NOASSERT=!1;h.Long=k|| -null;var e=h.prototype;Object.defineProperty(e,"__isByteBuffer__",{value:!0,enumerable:!1,configurable:!1});var v=new ArrayBuffer(0),w=String.fromCharCode;h.accessor=function(){return Uint8Array};h.allocate=function(a,b,c){return new h(a,b,c)};h.concat=function(a,b,c,d){if("boolean"===typeof b||"string"!==typeof b)d=c,c=b,b=void 0;for(var f=0,l=0,g=a.length,e;l=e||(b.view.set(c.view.subarray(c.offset,c.limit),b.offset),b.offset+=e);b.limit=b.offset;b.offset=0;return b};h.isByteBuffer=function(a){return!0===(a&&a.__isByteBuffer__)};h.type=function(){return ArrayBuffer};h.wrap=function(a,b,c,d){"string"!==typeof b&&(d=c,c=b,b=void 0);if("string"===typeof a)switch("undefined"===typeof b&&(b="utf8"),b){case "base64":return h.fromBase64(a,c);case "hex":return h.fromHex(a,c);case "binary":return h.fromBinary(a,c);case "utf8":return h.fromUTF8(a, -c);case "debug":return h.fromDebug(a,c);default:throw Error("Unsupported encoding: "+b);}if(null===a||"object"!==typeof a)throw TypeError("Illegal buffer");if(h.isByteBuffer(a))return b=e.clone.call(a),b.markedOffset=-1,b;if(a instanceof Uint8Array)b=new h(0,c,d),0>>=0;if(0>b||b+0> -this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var d=b,f=a.length,e=f>>3,g=0,h;for(b+=this.writeVarint32(f,b);e--;)h=!!a[g++]&1|(!!a[g++]&1)<<1|(!!a[g++]&1)<<2|(!!a[g++]&1)<<3|(!!a[g++]&1)<<4|(!!a[g++]&1)<<5|(!!a[g++]&1)<<6|(!!a[g++]&1)<<7,this.writeByte(h,b++);if(g>3,e=0,g=[];for(a+=c.length;f--;)c=this.readByte(a++),g[e++]=!!(c&1),g[e++]=!!(c&2),g[e++]=!!(c&4),g[e++]=!!(c&8),g[e++]=!!(c&16),g[e++]=!!(c&32),g[e++]=!!(c&64),g[e++]=!!(c&128);if(e>f++&1);b&&(this.offset=a);return g};e.readBytes=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+"+a+") <= "+this.buffer.byteLength);}var d=this.slice(b,b+a);c&&(this.offset+=a);return d};e.writeBytes=e.append;e.writeInt8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength); -}b+=1;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);this.view[b-1]=a;c&&(this.offset+=1);return this};e.writeByte=e.writeInt8;e.readInt8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}a=this.view[a];128===(a&128)&&(a=-(255-a+1));b&&(this.offset+= -1);return a};e.readByte=e.readInt8;e.writeUint8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=1;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b); -this.view[b-1]=a;c&&(this.offset+=1);return this};e.writeUInt8=e.writeUint8;e.readUint8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}a=this.view[a];b&&(this.offset+=1);return a};e.readUInt8=e.readUint8;e.writeInt16=function(a,b){var c="undefined"===typeof b; -c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=2;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=2;this.littleEndian?(this.view[b+1]=(a&65280)>>>8,this.view[b]=a&255):(this.view[b]=(a&65280)>>> -8,this.view[b+1]=a&255);c&&(this.offset+=2);return this};e.writeShort=e.writeInt16;e.readInt16=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+2) <= "+this.buffer.byteLength);}var c=0;this.littleEndian?(c=this.view[a],c|=this.view[a+1]<<8):(c=this.view[a]<<8,c|=this.view[a+1]);32768===(c&32768)&& -(c=-(65535-c+1));b&&(this.offset+=2);return c};e.readShort=e.readInt16;e.writeUint16=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=2;var d=this.buffer.byteLength; -b>d&&this.resize((d*=2)>b?d:b);b-=2;this.littleEndian?(this.view[b+1]=(a&65280)>>>8,this.view[b]=a&255):(this.view[b]=(a&65280)>>>8,this.view[b+1]=a&255);c&&(this.offset+=2);return this};e.writeUInt16=e.writeUint16;e.readUint16=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+2) <= "+this.buffer.byteLength); -}var c=0;this.littleEndian?(c=this.view[a],c|=this.view[a+1]<<8):(c=this.view[a]<<8,c|=this.view[a+1]);b&&(this.offset+=2);return c};e.readUInt16=e.readUint16;e.writeInt32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+0) <= "+this.buffer.byteLength);}b+=4;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=4;this.littleEndian?(this.view[b+3]=a>>>24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]=a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+3]=a&255);c&&(this.offset+=4);return this};e.writeInt=e.writeInt32;e.readInt32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a% -1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}var c=0;this.littleEndian?(c=this.view[a+2]<<16,c|=this.view[a+1]<<8,c|=this.view[a],c+=this.view[a+3]<<24>>>0):(c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0);b&&(this.offset+=4);return c|0};e.readInt=e.readInt32;e.writeUint32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset); -if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=4;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=4;this.littleEndian?(this.view[b+3]=a>>>24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]= -a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+3]=a&255);c&&(this.offset+=4);return this};e.writeUInt32=e.writeUint32;e.readUint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}var c=0;this.littleEndian?(c=this.view[a+ -2]<<16,c|=this.view[a+1]<<8,c|=this.view[a],c+=this.view[a+3]<<24>>>0):(c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0);b&&(this.offset+=4);return c};e.readUInt32=e.readUint32;k&&(e.writeInt64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=k.fromNumber(a);else if("string"===typeof a)a=k.fromString(a);else if(!(a&&a instanceof k))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!== -typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=k.fromNumber(a):"string"===typeof a&&(a=k.fromString(a));b+=8;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=8;var d=a.low,f=a.high;this.littleEndian?(this.view[b+3]=d>>>24&255,this.view[b+2]=d>>>16&255,this.view[b+1]=d>>>8&255,this.view[b]=d&255,b+=4,this.view[b+3]= -f>>>24&255,this.view[b+2]=f>>>16&255,this.view[b+1]=f>>>8&255,this.view[b]=f&255):(this.view[b]=f>>>24&255,this.view[b+1]=f>>>16&255,this.view[b+2]=f>>>8&255,this.view[b+3]=f&255,b+=4,this.view[b]=d>>>24&255,this.view[b+1]=d>>>16&255,this.view[b+2]=d>>>8&255,this.view[b+3]=d&255);c&&(this.offset+=8);return this},e.writeLong=e.writeInt64,e.readInt64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)"); -a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}var c=0,d=0;this.littleEndian?(c=this.view[a+2]<<16,c|=this.view[a+1]<<8,c|=this.view[a],c+=this.view[a+3]<<24>>>0,a+=4,d=this.view[a+2]<<16,d|=this.view[a+1]<<8,d|=this.view[a],d+=this.view[a+3]<<24>>>0):(d=this.view[a+1]<<16,d|=this.view[a+2]<<8,d|=this.view[a+3],d+=this.view[a]<<24>>>0,a+=4,c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0); -a=new k(c,d,!1);b&&(this.offset+=8);return a},e.readLong=e.readInt64,e.writeUint64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=k.fromNumber(a);else if("string"===typeof a)a=k.fromString(a);else if(!(a&&a instanceof k))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=k.fromNumber(a):"string"===typeof a&&(a=k.fromString(a));b+=8;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=8;var d=a.low,f=a.high;this.littleEndian?(this.view[b+3]=d>>>24&255,this.view[b+2]=d>>>16&255,this.view[b+1]=d>>>8&255,this.view[b]=d&255,b+=4,this.view[b+3]=f>>>24&255,this.view[b+2]=f>>>16&255,this.view[b+1]=f>>>8&255,this.view[b]=f&255):(this.view[b]=f>>>24&255,this.view[b+1]=f>>>16&255,this.view[b+2]=f>>>8&255, -this.view[b+3]=f&255,b+=4,this.view[b]=d>>>24&255,this.view[b+1]=d>>>16&255,this.view[b+2]=d>>>8&255,this.view[b+3]=d&255);c&&(this.offset+=8);return this},e.writeUInt64=e.writeUint64,e.readUint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}var c=0,d=0;this.littleEndian? -(c=this.view[a+2]<<16,c|=this.view[a+1]<<8,c|=this.view[a],c+=this.view[a+3]<<24>>>0,a+=4,d=this.view[a+2]<<16,d|=this.view[a+1]<<8,d|=this.view[a],d+=this.view[a+3]<<24>>>0):(d=this.view[a+1]<<16,d|=this.view[a+2]<<8,d|=this.view[a+3],d+=this.view[a]<<24>>>0,a+=4,c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0);a=new k(c,d,!0);b&&(this.offset+=8);return a},e.readUInt64=e.readUint64);e.writeFloat32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!== -typeof a)throw TypeError("Illegal value: "+a+" (not a number)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=4;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);u(this.view,a,b-4,this.littleEndian,23,4);c&&(this.offset+=4);return this};e.writeFloat=e.writeFloat32;e.readFloat32=function(a){var b="undefined"===typeof a;b&& -(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}a=s(this.view,a,this.littleEndian,23,4);b&&(this.offset+=4);return a};e.readFloat=e.readFloat32;e.writeFloat64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a)throw TypeError("Illegal value: "+a+" (not a number)"); -if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=8;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);u(this.view,a,b-8,this.littleEndian,52,8);c&&(this.offset+=8);return this};e.writeDouble=e.writeFloat64;e.readFloat64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!== -a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}a=s(this.view,a,this.littleEndian,52,8);b&&(this.offset+=8);return a};e.readDouble=e.readFloat64;h.MAX_VARINT32_BYTES=5;h.calculateVarint32=function(a){a>>>=0;return 128>a?1:16384>a?2:2097152>a?3:268435456>a?4:5};h.zigZagEncode32=function(a){return((a|=0)<<1^a>>31)>>>0};h.zigZagDecode32=function(a){return a>>>1^-(a& -1)|0};e.writeVarint32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var d=h.calculateVarint32(a),f;b+=d;f=this.buffer.byteLength;b>f&&this.resize((f*=2)>b?f:b); -b-=d;for(a>>>=0;128<=a;)f=a&127|128,this.view[b++]=f,a>>>=7;this.view[b++]=a;return c?(this.offset=b,this):d};e.writeVarint32ZigZag=function(a,b){return this.writeVarint32(h.zigZagEncode32(a),b)};e.readVarint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength); -}var c=0,d=0,f;do{if(!this.noAssert&&a>this.limit)throw a=Error("Truncated"),a.truncated=!0,a;f=this.view[a++];5>c&&(d|=(f&127)<<7*c);++c}while(0!==(f&128));d|=0;return b?(this.offset=a,d):{value:d,length:c}};e.readVarint32ZigZag=function(a){a=this.readVarint32(a);"object"===typeof a?a.value=h.zigZagDecode32(a.value):a=h.zigZagDecode32(a);return a};k&&(h.MAX_VARINT64_BYTES=10,h.calculateVarint64=function(a){"number"===typeof a?a=k.fromNumber(a):"string"===typeof a&&(a=k.fromString(a));var b=a.toInt()>>> -0,c=a.shiftRightUnsigned(28).toInt()>>>0;a=a.shiftRightUnsigned(56).toInt()>>>0;return 0==a?0==c?16384>b?128>b?1:2:2097152>b?3:4:16384>c?128>c?5:6:2097152>c?7:8:128>a?9:10},h.zigZagEncode64=function(a){"number"===typeof a?a=k.fromNumber(a,!1):"string"===typeof a?a=k.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());return a.shiftLeft(1).xor(a.shiftRight(63)).toUnsigned()},h.zigZagDecode64=function(a){"number"===typeof a?a=k.fromNumber(a,!1):"string"===typeof a?a=k.fromString(a,!1):!1!==a.unsigned&& -(a=a.toSigned());return a.shiftRightUnsigned(1).xor(a.and(k.ONE).toSigned().negate()).toSigned()},e.writeVarint64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=k.fromNumber(a);else if("string"===typeof a)a=k.fromString(a);else if(!(a&&a instanceof k))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=k.fromNumber(a,!1):"string"===typeof a?a=k.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());var d=h.calculateVarint64(a),f=a.toInt()>>>0,e=a.shiftRightUnsigned(28).toInt()>>>0,g=a.shiftRightUnsigned(56).toInt()>>>0;b+=d;var t=this.buffer.byteLength;b>t&&this.resize((t*=2)>b?t:b);b-=d;switch(d){case 10:this.view[b+9]=g>>>7&1;case 9:this.view[b+8]=9!==d?g|128:g&127;case 8:this.view[b+7]=8!==d?e>>>21|128:e>>>21&127;case 7:this.view[b+6]= -7!==d?e>>>14|128:e>>>14&127;case 6:this.view[b+5]=6!==d?e>>>7|128:e>>>7&127;case 5:this.view[b+4]=5!==d?e|128:e&127;case 4:this.view[b+3]=4!==d?f>>>21|128:f>>>21&127;case 3:this.view[b+2]=3!==d?f>>>14|128:f>>>14&127;case 2:this.view[b+1]=2!==d?f>>>7|128:f>>>7&127;case 1:this.view[b]=1!==d?f|128:f&127}return c?(this.offset+=d,this):d},e.writeVarint64ZigZag=function(a,b){return this.writeVarint64(h.zigZagEncode64(a),b)},e.readVarint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!== -typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,d=0,f=0,e=0,g=0,g=this.view[a++],d=g&127;if(g&128&&(g=this.view[a++],d|=(g&127)<<7,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],d|=(g&127)<<14,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],d|=(g&127)<<21,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++], -f=g&127,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],f|=(g&127)<<7,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],f|=(g&127)<<14,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],f|=(g&127)<<21,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],e=g&127,g&128||this.noAssert&&"undefined"===typeof g)&&(g=this.view[a++],e|=(g&127)<<7,g&128||this.noAssert&&"undefined"===typeof g))throw Error("Buffer overrun");d=k.fromBits(d|f<<28,f>>>4| -e<<24,!1);return b?(this.offset=a,d):{value:d,length:a-c}},e.readVarint64ZigZag=function(a){(a=this.readVarint64(a))&&a.value instanceof k?a.value=h.zigZagDecode64(a.value):a=h.zigZagDecode64(a);return a});e.writeCString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);var d,f=a.length;if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");for(d=0;d>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}f=n.calculateUTF16asUTF8(m(a))[1];b+=f+1;d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=f+1;n.encodeUTF16toUTF8(m(a),function(a){this.view[b++]=a}.bind(this));this.view[b++]=0;return c?(this.offset=b,this):f};e.readCString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!== -typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,d,f=-1;n.decodeUTF8toUTF16(function(){if(0===f)return null;if(a>=this.limit)throw RangeError("Illegal range: Truncated data, "+a+" < "+this.limit);f=this.view[a++];return 0===f?null:f}.bind(this),d=r(),!0);return b?(this.offset=a,d()):{string:d(),length:a-c}};e.writeIString=function(a,b){var c= -"undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var d=b,f;f=n.calculateUTF16asUTF8(m(a),this.noAssert)[1];b+=4+f;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=4+f;this.littleEndian?(this.view[b+ -3]=f>>>24&255,this.view[b+2]=f>>>16&255,this.view[b+1]=f>>>8&255,this.view[b]=f&255):(this.view[b]=f>>>24&255,this.view[b+1]=f>>>16&255,this.view[b+2]=f>>>8&255,this.view[b+3]=f&255);b+=4;n.encodeUTF16toUTF8(m(a),function(a){this.view[b++]=a}.bind(this));if(b!==d+4+f)throw RangeError("Illegal range: Truncated data, "+b+" == "+(b+4+f));return c?(this.offset=b,this):b-d};e.readIString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ -a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}var c=a,d=this.readUint32(a),d=this.readUTF8String(d,h.METRICS_BYTES,a+=4);a+=d.length;return b?(this.offset=a,d.string):{string:d.string,length:a-c}};h.METRICS_CHARS="c";h.METRICS_BYTES="b";e.writeUTF8String=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+ -b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var d,f=b;d=n.calculateUTF16asUTF8(m(a))[1];b+=d;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=d;n.encodeUTF16toUTF8(m(a),function(a){this.view[b++]=a}.bind(this));return c?(this.offset=b,this):b-f};e.writeString=e.writeUTF8String;h.calculateUTF8Chars=function(a){return n.calculateUTF16asUTF8(m(a))[0]};h.calculateUTF8Bytes=function(a){return n.calculateUTF16asUTF8(m(a))[1]}; -h.calculateString=h.calculateUTF8Bytes;e.readUTF8String=function(a,b,c){"number"===typeof b&&(c=b,b=void 0);var d="undefined"===typeof c;d&&(c=this.offset);"undefined"===typeof b&&(b=h.METRICS_CHARS);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+ -this.buffer.byteLength);}var f=0,e=c,g;if(b===h.METRICS_CHARS){g=r();n.decodeUTF8(function(){return f>>=0;if(0>c||c+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ -c+" (+"+a+") <= "+this.buffer.byteLength);}var k=c+a;n.decodeUTF8toUTF16(function(){return c>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var d=b,f,e;f=n.calculateUTF16asUTF8(m(a),this.noAssert)[1];e=h.calculateVarint32(f);b+=e+f;var g=this.buffer.byteLength;b>g&&this.resize((g*=2)>b?g:b);b-=e+f;b+=this.writeVarint32(f,b);n.encodeUTF16toUTF8(m(a),function(a){this.view[b++]=a}.bind(this));if(b!==d+f+e)throw RangeError("Illegal range: Truncated data, "+ -b+" == "+(b+f+e));return c?(this.offset=b,this):b-d};e.readVString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,d=this.readVarint32(a),d=this.readUTF8String(d.value,h.METRICS_BYTES,a+=d.length);a+=d.length;return b?(this.offset=a,d.string):{string:d.string, -length:a-c}};e.append=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var d="undefined"===typeof c;d&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}a instanceof h||(a=h.wrap(a,b));b=a.limit-a.offset;if(0>=b)return this;c+=b;var f=this.buffer.byteLength;c>f&&this.resize((f*=2)> -c?f:c);c-=b;this.view.set(a.view.subarray(a.offset,a.limit),c);a.offset+=b;d&&(this.offset+=b);return this};e.appendTo=function(a,b){a.append(this,b);return this};e.assert=function(a){this.noAssert=!a;return this};e.capacity=function(){return this.buffer.byteLength};e.clear=function(){this.offset=0;this.limit=this.buffer.byteLength;this.markedOffset=-1;return this};e.clone=function(a){var b=new h(0,this.littleEndian,this.noAssert);a?(b.buffer=new ArrayBuffer(this.buffer.byteLength),b.view=new Uint8Array(b.buffer)): -(b.buffer=this.buffer,b.view=this.view);b.offset=this.offset;b.markedOffset=this.markedOffset;b.limit=this.limit;return b};e.compact=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+ -b+" <= "+this.buffer.byteLength);}if(0===a&&b===this.buffer.byteLength)return this;var c=b-a;if(0===c)return this.buffer=v,this.view=null,0<=this.markedOffset&&(this.markedOffset-=a),this.limit=this.offset=0,this;var d=new ArrayBuffer(c),f=new Uint8Array(d);f.set(this.view.subarray(a,b));this.buffer=d;this.view=f;0<=this.markedOffset&&(this.markedOffset-=a);this.offset=0;this.limit=c;return this};e.copy=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!== -typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return new h(0,this.littleEndian,this.noAssert);var c=b-a,d=new h(c,this.littleEndian,this.noAssert);d.offset=0;d.limit=c;0<=d.markedOffset&&(d.markedOffset-=a);this.copyTo(d,0,a,b);return d};e.copyTo=function(a, -b,c,d){var f,e;if(!this.noAssert&&!h.isByteBuffer(a))throw TypeError("Illegal target: Not a ByteBuffer");b=(e="undefined"===typeof b)?a.offset:b|0;c=(f="undefined"===typeof c)?this.offset:c|0;d="undefined"===typeof d?this.limit:d|0;if(0>b||b>a.buffer.byteLength)throw RangeError("Illegal target range: 0 <= "+b+" <= "+a.buffer.byteLength);if(0>c||d>this.buffer.byteLength)throw RangeError("Illegal source range: 0 <= "+c+" <= "+this.buffer.byteLength);var g=d-c;if(0===g)return a;a.ensureCapacity(b+g); -a.view.set(this.view.subarray(c,d),b);f&&(this.offset+=g);e&&(a.offset+=g);return this};e.ensureCapacity=function(a){var b=this.buffer.byteLength;return ba?b:a):this};e.fill=function(a,b,c){var d="undefined"===typeof b;d&&(b=this.offset);"string"===typeof a&&0>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal end: Not an integer");c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(b>=c)return this;for(;b>>=0;if(0>a||a+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+0) <= "+this.buffer.byteLength);}this.markedOffset=a;return this};e.order=function(a){if(!this.noAssert&&"boolean"!==typeof a)throw TypeError("Illegal littleEndian: Not a boolean");this.littleEndian=!!a;return this};e.LE=function(a){this.littleEndian="undefined"!==typeof a?!!a:!0;return this};e.BE=function(a){this.littleEndian= -"undefined"!==typeof a?!a:!1;return this};e.prepend=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var d="undefined"===typeof c;d&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}a instanceof h||(a=h.wrap(a,b));b=a.limit-a.offset;if(0>=b)return this;var f=b-c;if(0a)throw RangeError("Illegal capacity: 0 <= "+a);}if(this.buffer.byteLength>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return this;Array.prototype.reverse.call(this.view.subarray(a,b));return this}; -e.skip=function(a){if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0}var b=this.offset+a;if(!this.noAssert&&(0>b||b>this.buffer.byteLength))throw RangeError("Illegal length: 0 <= "+this.offset+" + "+a+" <= "+this.buffer.byteLength);this.offset=b;return this};e.slice=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer"); -a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}var c=this.clone();c.offset=a;c.limit=b;return c};e.toBuffer=function(a){var b=this.offset,c=this.limit;if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: Not an integer");b>>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal limit: Not an integer"); -c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(!a&&0===b&&c===this.buffer.byteLength)return this.buffer;if(b===c)return v;a=new ArrayBuffer(c-b);(new Uint8Array(a)).set((new Uint8Array(this.buffer)).subarray(b,c),0);return a};e.toArrayBuffer=e.toBuffer;e.toString=function(a,b,c){if("undefined"===typeof a)return"ByteBufferAB(offset="+this.offset+",markedOffset="+this.markedOffset+",limit="+this.limit+",capacity="+this.capacity()+ -")";"number"===typeof a&&(c=b=a="utf8");switch(a){case "utf8":return this.toUTF8(b,c);case "base64":return this.toBase64(b,c);case "hex":return this.toHex(b,c);case "binary":return this.toBinary(b,c);case "debug":return this.toDebug();case "columns":return this.toColumns();default:throw Error("Unsupported encoding: "+a);}};var x=function(){for(var a={},b=[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113, -114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,43,47],c=[],d=0,f=b.length;d>2&63]),f=(d&3)<<4,null!==(d=a())?(f|=d>>4&15,c(b[(f|d>>4&15)&63]),f=(d&15)<<2,null!==(d=a())?(c(b[(f|d>>6&3)&63]),c(b[d&63])):(c(b[f&63]),c(61))):(c(b[f&63]),c(61),c(61))};a.decode=function(a,b){function d(a){throw Error("Illegal character code: "+a);}for(var f,e,h;null!==(f=a());)if(e=c[f],"undefined"===typeof e&&d(f),null!==(f=a())&& -(h=c[f],"undefined"===typeof h&&d(f),b(e<<2>>>0|(h&48)>>4),null!==(f=a()))){e=c[f];if("undefined"===typeof e)if(61===f)break;else d(f);b((h&15)<<4>>>0|(e&60)>>2);if(null!==(f=a())){h=c[f];if("undefined"===typeof h)if(61===f)break;else d(f);b((e&3)<<6>>>0|h)}}};a.test=function(a){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(a)};return a}();e.toBase64=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);a|=0;b|=0;if(0>a||b>this.capacity|| -a>b)throw RangeError("begin, end");var c;x.encode(function(){return aa||b>this.capacity()||a>b)throw RangeError("begin, end");if(a===b)return"";for(var c=[],d=[];ad?f+("0"+d.toString(16).toUpperCase()):f+d.toString(16).toUpperCase(),a&&(e+=32d?String.fromCharCode(d):"."));++b;if(a&&0f.length;)f+=" ";g+=f+e+"\n";f=e=""}f=b===this.offset&&b===this.limit?f+(b===this.markedOffset?"!":"|"):b===this.offset?f+(b===this.markedOffset?"[":"<"):b===this.limit?f+(b===this.markedOffset?"]":">"):f+(b===this.markedOffset?"'":a||0!==b&&b!==c?" ":"")}if(a&&" "!== -f){for(;51>f.length;)f+=" ";g+=f+e+"\n"}return a?g:f};h.fromDebug=function(a,b,c){var d=a.length;b=new h((d+1)/3|0,b,c);for(var f=0,e=0,g,k=!1,m=!1,n=!1,p=!1,q=!1;f":if(!c){if(p){q=!0;break}p=!0}b.limit=e;k=!1;break;case "'":if(!c){if(n){q=!0;break}n=!0}b.markedOffset=e;k=!1;break;case " ":k=!1;break;default:if(!c&&k){q=!0;break}g=parseInt(g+a.charAt(f++),16);if(!c&&(isNaN(g)||0>g||255>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+ -this.buffer.byteLength);}for(var c=Array(b-a),d;ad?c.push("0",d.toString(16)):c.push(d.toString(16));return c.join("")};h.fromHex=function(a,b,c){if(!c){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if(0!==a.length%2)throw TypeError("Illegal str: Length not a multiple of 2");}var d=a.length;b=new h(d/2|0,b);for(var f,e=0,g=0;ef||255d?c(d&127):(2048>d?c(d>>6&31|192):(65536>d?c(d>>12&15|224):(c(d>>18&7|240),c(d>>12&63|128)),c(d>>6&63|128)),c(d&63|128)),d=null},decodeUTF8:function(a,c){for(var d,f,e,g,h=function(a){a=a.slice(0,a.indexOf(null));var b=Error(a.toString());b.name="TruncatedError";b.bytes=a;throw b;};null!==(d=a());)if(0=== -(d&128))c(d);else if(192===(d&224))null===(f=a())&&h([d,f]),c((d&31)<<6|f&63);else if(224===(d&240))null!==(f=a())&&null!==(e=a())||h([d,f,e]),c((d&15)<<12|(f&63)<<6|e&63);else if(240===(d&248))null!==(f=a())&&null!==(e=a())&&null!==(g=a())||h([d,f,e,g]),c((d&7)<<18|(f&63)<<12|(e&63)<<6|g&63);else throw RangeError("Illegal starting byte: "+d);},UTF16toUTF8:function(a,c){for(var d,e=null;null!==(d=null!==e?e:a());)55296<=d&&57343>=d&&null!==(e=a())&&56320<=e&&57343>=e?(c(1024*(d-55296)+e-56320+65536), -e=null):c(d);null!==e&&c(e)},UTF8toUTF16:function(a,c){var d=null;"number"===typeof a&&(d=a,a=function(){return null});for(;null!==d||null!==(d=a());)65535>=d?c(d):(d-=65536,c((d>>10)+55296),c(d%1024+56320)),d=null},encodeUTF16toUTF8:function(b,c){a.UTF16toUTF8(b,function(b){a.encodeUTF8(b,c)})},decodeUTF8toUTF16:function(b,c){a.decodeUTF8(b,function(b){a.UTF8toUTF16(b,c)})},calculateCodePoint:function(a){return 128>a?1:2048>a?2:65536>a?3:4},calculateUTF8:function(a){for(var c,d=0;null!==(c=a());)d+= -128>c?1:2048>c?2:65536>c?3:4;return d},calculateUTF16asUTF8:function(b){var c=0,d=0;a.UTF16toUTF8(b,function(a){++c;d+=128>a?1:2048>a?2:65536>a?3:4});return[c,d]}};return a}();e.toUTF8=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+ -a+" <= "+b+" <= "+this.buffer.byteLength);}var c;try{n.decodeUTF8toUTF16(function(){return a>1,n=-7;k=c?k-1:0;var h=c?-1:1,q=a[b+k];k+=h;c=q&(1<<-n)-1;q>>=-n;for(n+=f;0>=-n;for(n+=e;0>1,q=23===k?Math.pow(2, +-24)-Math.pow(2,-77):0;f=e?0:f-1;var l=e?1:-1,m=0>b||0===b&&0>1/b?1:0;b=Math.abs(b);isNaN(b)||Infinity===b?(b=isNaN(b)?1:0,e=n):(e=Math.floor(Math.log(b)/Math.LN2),1>b*(d=Math.pow(2,-e))&&(e--,d*=2),b=1<=e+h?b+q/d:b+q*Math.pow(2,1-h),2<=b*d&&(e++,d/=2),e+h>=n?(b=0,e=n):1<=e+h?(b=(b*d-1)*Math.pow(2,k),e+=h):(b=b*Math.pow(2,h-1)*Math.pow(2,k),e=0));for(;8<=k;a[c+f]=b&255,f+=l,b/=256,k-=8);e=e<a)throw RangeError("Illegal capacity");b=!!b;c=!!c}this.buffer=0===a?w:new ArrayBuffer(a);this.view=0===a?null:new Uint8Array(this.buffer);this.offset=0;this.markedOffset=-1;this.limit=a;this.littleEndian=b;this.noAssert=c};g.VERSION="5.0.1";g.LITTLE_ENDIAN=!0;g.BIG_ENDIAN=!1;g.DEFAULT_CAPACITY=16;g.DEFAULT_ENDIAN=g.BIG_ENDIAN;g.DEFAULT_NOASSERT=!1;g.Long=h||null;var d= +g.prototype;Object.defineProperty(d,"__isByteBuffer__",{value:!0,enumerable:!1,configurable:!1});var w=new ArrayBuffer(0),x=String.fromCharCode;g.accessor=function(){return Uint8Array};g.allocate=function(a,b,c){return new g(a,b,c)};g.concat=function(a,b,c,e){if("boolean"===typeof b||"string"!==typeof b)e=c,c=b,b=void 0;for(var k=0,f=0,d=a.length,u;f=u||(b.view.set(c.view.subarray(c.offset,c.limit),b.offset),b.offset+=u);b.limit=b.offset;b.offset=0;return b};g.isByteBuffer=function(a){return!0===(a&&a.__isByteBuffer__)};g.type=function(){return ArrayBuffer};g.wrap=function(a,b,c,e){"string"!==typeof b&&(e=c,c=b,b=void 0);if("string"===typeof a)switch("undefined"===typeof b&&(b="utf8"),b){case "base64":return g.fromBase64(a,c);case "hex":return g.fromHex(a,c);case "binary":return g.fromBinary(a,c);case "utf8":return g.fromUTF8(a, +c);case "debug":return g.fromDebug(a,c);default:throw Error("Unsupported encoding: "+b);}if(null===a||"object"!==typeof a)throw TypeError("Illegal buffer");if(g.isByteBuffer(a))return b=d.clone.call(a),b.markedOffset=-1,b;if(a instanceof Uint8Array)b=new g(0,c,e),0>>=0;if(0>b||b+0> +this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b,k=a.length,f=k>>3,d=0;for(b+=this.writeVarint32(k,b);f--;){var g=!!a[d++]&1|(!!a[d++]&1)<<1|(!!a[d++]&1)<<2|(!!a[d++]&1)<<3|(!!a[d++]&1)<<4|(!!a[d++]&1)<<5|(!!a[d++]&1)<<6|(!!a[d++]&1)<<7;this.writeByte(g,b++)}if(d>3,f=0,d=[];for(a+=c.length;k--;)c=this.readByte(a++),d[f++]=!!(c&1),d[f++]=!!(c&2),d[f++]=!!(c&4),d[f++]=!!(c&8),d[f++]=!!(c&16),d[f++]=!!(c&32),d[f++]=!!(c&64),d[f++]=!!(c&128);if(f>k++&1);b&&(this.offset=a);return d};d.readBytes=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b|| +b+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+"+a+") <= "+this.buffer.byteLength);}b=this.slice(b,b+a);c&&(this.offset+=a);return b};d.writeInt8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +b+" (+0) <= "+this.buffer.byteLength);}b+=1;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);this.view[b-1]=a;c&&(this.offset+=1);return this};d.writeByte=d.writeInt8;d.readInt8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}a=this.view[a];128=== +(a&128)&&(a=-(255-a+1));b&&(this.offset+=1);return a};d.readByte=d.readInt8;d.writeUint8=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=1;var e=this.buffer.byteLength; +b>e&&this.resize((e*=2)>b?e:b);this.view[b-1]=a;c&&(this.offset+=1);return this};d.writeUInt8=d.writeUint8;d.readUint8=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}a=this.view[a];b&&(this.offset+=1);return a};d.readUInt8=d.readUint8;d.writeInt16=function(a, +b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=2;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=2;this.littleEndian?(this.view[b+1]=(a&65280)>>>8,this.view[b]= +a&255):(this.view[b]=(a&65280)>>>8,this.view[b+1]=a&255);c&&(this.offset+=2);return this};d.writeShort=d.writeInt16;d.readInt16=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+2) <= "+this.buffer.byteLength);}if(this.littleEndian){var c=this.view[a];c|=this.view[a+1]<<8}else c=this.view[a]<< +8,c|=this.view[a+1];32768===(c&32768)&&(c=-(65535-c+1));b&&(this.offset+=2);return c};d.readShort=d.readInt16;d.writeUint16=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength); +}b+=2;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=2;this.littleEndian?(this.view[b+1]=(a&65280)>>>8,this.view[b]=a&255):(this.view[b]=(a&65280)>>>8,this.view[b+1]=a&255);c&&(this.offset+=2);return this};d.writeUInt16=d.writeUint16;d.readUint16=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +a+" (+2) <= "+this.buffer.byteLength);}if(this.littleEndian){var c=this.view[a];c|=this.view[a+1]<<8}else c=this.view[a]<<8,c|=this.view[a+1];b&&(this.offset+=2);return c};d.readUInt16=d.readUint16;d.writeInt32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +b+" (+0) <= "+this.buffer.byteLength);}b+=4;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=4;this.littleEndian?(this.view[b+3]=a>>>24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]=a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+3]=a&255);c&&(this.offset+=4);return this};d.writeInt=d.writeInt32;d.readInt32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a% +1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}if(this.littleEndian){var c=this.view[a+2]<<16;c|=this.view[a+1]<<8;c|=this.view[a];c+=this.view[a+3]<<24>>>0}else c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0;b&&(this.offset+=4);return c|0};d.readInt=d.readInt32;d.writeUint32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset); +if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=4;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=4;this.littleEndian?(this.view[b+3]=a>>>24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]= +a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+3]=a&255);c&&(this.offset+=4);return this};d.writeUInt32=d.writeUint32;d.readUint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}if(this.littleEndian){var c=this.view[a+ +2]<<16;c|=this.view[a+1]<<8;c|=this.view[a];c+=this.view[a+3]<<24>>>0}else c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0;b&&(this.offset+=4);return c};d.readUInt32=d.readUint32;h&&(d.writeInt64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=h.fromNumber(a);else if("string"===typeof a)a=h.fromString(a);else if(!(a&&a instanceof h))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!== +typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=h.fromNumber(a):"string"===typeof a&&(a=h.fromString(a));b+=8;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=8;e=a.low;a=a.high;this.littleEndian?(this.view[b+3]=e>>>24&255,this.view[b+2]=e>>>16&255,this.view[b+1]=e>>>8&255,this.view[b]=e&255,b+=4,this.view[b+3]=a>>> +24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]=a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+3]=a&255,b+=4,this.view[b]=e>>>24&255,this.view[b+1]=e>>>16&255,this.view[b+2]=e>>>8&255,this.view[b+3]=e&255);c&&(this.offset+=8);return this},d.writeLong=d.writeInt64,d.readInt64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)"); +a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}if(this.littleEndian){var c=this.view[a+2]<<16;c|=this.view[a+1]<<8;c|=this.view[a];c+=this.view[a+3]<<24>>>0;a+=4;var e=this.view[a+2]<<16;e|=this.view[a+1]<<8;e|=this.view[a];e+=this.view[a+3]<<24>>>0}else e=this.view[a+1]<<16,e|=this.view[a+2]<<8,e|=this.view[a+3],e+=this.view[a]<<24>>>0,a+=4,c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>> +0;a=new h(c,e,!1);b&&(this.offset+=8);return a},d.readLong=d.readInt64,d.writeUint64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=h.fromNumber(a);else if("string"===typeof a)a=h.fromString(a);else if(!(a&&a instanceof h))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=h.fromNumber(a):"string"===typeof a&&(a=h.fromString(a));b+=8;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=8;e=a.low;a=a.high;this.littleEndian?(this.view[b+3]=e>>>24&255,this.view[b+2]=e>>>16&255,this.view[b+1]=e>>>8&255,this.view[b]=e&255,b+=4,this.view[b+3]=a>>>24&255,this.view[b+2]=a>>>16&255,this.view[b+1]=a>>>8&255,this.view[b]=a&255):(this.view[b]=a>>>24&255,this.view[b+1]=a>>>16&255,this.view[b+2]=a>>>8&255,this.view[b+ +3]=a&255,b+=4,this.view[b]=e>>>24&255,this.view[b+1]=e>>>16&255,this.view[b+2]=e>>>8&255,this.view[b+3]=e&255);c&&(this.offset+=8);return this},d.writeUInt64=d.writeUint64,d.readUint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}if(this.littleEndian){var c= +this.view[a+2]<<16;c|=this.view[a+1]<<8;c|=this.view[a];c+=this.view[a+3]<<24>>>0;a+=4;var e=this.view[a+2]<<16;e|=this.view[a+1]<<8;e|=this.view[a];e+=this.view[a+3]<<24>>>0}else e=this.view[a+1]<<16,e|=this.view[a+2]<<8,e|=this.view[a+3],e+=this.view[a]<<24>>>0,a+=4,c=this.view[a+1]<<16,c|=this.view[a+2]<<8,c|=this.view[a+3],c+=this.view[a]<<24>>>0;a=new h(c,e,!0);b&&(this.offset+=8);return a},d.readUInt64=d.readUint64);d.writeFloat32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset); +if(!this.noAssert){if("number"!==typeof a)throw TypeError("Illegal value: "+a+" (not a number)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=4;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);y(this.view,a,b-4,this.littleEndian,23,4);c&&(this.offset+=4);return this};d.writeFloat=d.writeFloat32;d.readFloat32=function(a){var b= +"undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}a=v(this.view,a,this.littleEndian,23,4);b&&(this.offset+=4);return a};d.readFloat=d.readFloat32;d.writeFloat64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a)throw TypeError("Illegal value: "+ +a+" (not a number)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}b+=8;var e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);y(this.view,a,b-8,this.littleEndian,52,8);c&&(this.offset+=8);return this};d.writeDouble=d.writeFloat64;d.readFloat64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!== +typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+8) <= "+this.buffer.byteLength);}a=v(this.view,a,this.littleEndian,52,8);b&&(this.offset+=8);return a};d.readDouble=d.readFloat64;g.MAX_VARINT32_BYTES=5;g.calculateVarint32=function(a){a>>>=0;return 128>a?1:16384>a?2:2097152>a?3:268435456>a?4:5};g.zigZagEncode32=function(a){return((a|=0)<<1^a>>31)>>>0};g.zigZagDecode32=function(a){return a>>> +1^-(a&1)|0};d.writeVarint32=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal value: "+a+" (not an integer)");a|=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=g.calculateVarint32(a);b+=e;var k=this.buffer.byteLength;b>k&&this.resize((k*=2)> +b?k:b);b-=e;for(a>>>=0;128<=a;)k=a&127|128,this.view[b++]=k,a>>>=7;this.view[b++]=a;return c?(this.offset=b,this):e};d.writeVarint32ZigZag=function(a,b){return this.writeVarint32(g.zigZagEncode32(a),b)};d.readVarint32=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength); +}var c=0,e=0;do{if(!this.noAssert&&a>this.limit)throw a=Error("Truncated"),a.truncated=!0,a;var k=this.view[a++];5>c&&(e|=(k&127)<<7*c);++c}while(0!==(k&128));e|=0;return b?(this.offset=a,e):{value:e,length:c}};d.readVarint32ZigZag=function(a){a=this.readVarint32(a);"object"===typeof a?a.value=g.zigZagDecode32(a.value):a=g.zigZagDecode32(a);return a};h&&(g.MAX_VARINT64_BYTES=10,g.calculateVarint64=function(a){"number"===typeof a?a=h.fromNumber(a):"string"===typeof a&&(a=h.fromString(a));var b=a.toInt()>>> +0,c=a.shiftRightUnsigned(28).toInt()>>>0;a=a.shiftRightUnsigned(56).toInt()>>>0;return 0==a?0==c?16384>b?128>b?1:2:2097152>b?3:4:16384>c?128>c?5:6:2097152>c?7:8:128>a?9:10},g.zigZagEncode64=function(a){"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());return a.shiftLeft(1).xor(a.shiftRight(63)).toUnsigned()},g.zigZagDecode64=function(a){"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&& +(a=a.toSigned());return a.shiftRightUnsigned(1).xor(a.and(h.ONE).toSigned().negate()).toSigned()},d.writeVarint64=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"===typeof a)a=h.fromNumber(a);else if("string"===typeof a)a=h.fromString(a);else if(!(a&&a instanceof h))throw TypeError("Illegal value: "+a+" (not an integer or Long)");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +b+" (+0) <= "+this.buffer.byteLength);}"number"===typeof a?a=h.fromNumber(a,!1):"string"===typeof a?a=h.fromString(a,!1):!1!==a.unsigned&&(a=a.toSigned());var e=g.calculateVarint64(a),k=a.toInt()>>>0,f=a.shiftRightUnsigned(28).toInt()>>>0;a=a.shiftRightUnsigned(56).toInt()>>>0;b+=e;var d=this.buffer.byteLength;b>d&&this.resize((d*=2)>b?d:b);b-=e;switch(e){case 10:this.view[b+9]=a>>>7&1;case 9:this.view[b+8]=9!==e?a|128:a&127;case 8:this.view[b+7]=8!==e?f>>>21|128:f>>>21&127;case 7:this.view[b+6]= +7!==e?f>>>14|128:f>>>14&127;case 6:this.view[b+5]=6!==e?f>>>7|128:f>>>7&127;case 5:this.view[b+4]=5!==e?f|128:f&127;case 4:this.view[b+3]=4!==e?k>>>21|128:k>>>21&127;case 3:this.view[b+2]=3!==e?k>>>14|128:k>>>14&127;case 2:this.view[b+1]=2!==e?k>>>7|128:k>>>7&127;case 1:this.view[b]=1!==e?k|128:k&127}return c?(this.offset+=e,this):e},d.writeVarint64ZigZag=function(a,b){return this.writeVarint64(g.zigZagEncode64(a),b)},d.readVarint64=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!== +typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=0,k=0;var d=this.view[a++];var g=d&127;if(d&128&&(d=this.view[a++],g|=(d&127)<<7,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],g|=(d&127)<<14,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],g|=(d&127)<<21,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++], +e=d&127,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],e|=(d&127)<<7,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],e|=(d&127)<<14,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],e|=(d&127)<<21,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],k=d&127,d&128||this.noAssert&&"undefined"===typeof d)&&(d=this.view[a++],k|=(d&127)<<7,d&128||this.noAssert&&"undefined"===typeof d))throw Error("Buffer overrun");g=h.fromBits(g|e<<28,e>>>4| +k<<24,!1);return b?(this.offset=a,g):{value:g,length:a-c}},d.readVarint64ZigZag=function(a){(a=this.readVarint64(a))&&a.value instanceof h?a.value=g.zigZagDecode64(a.value):a=g.zigZagDecode64(a);return a});d.writeCString=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);var e,d=a.length;if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");for(e=0;e>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}d=m.calculateUTF16asUTF8(l(a))[1];b+=d+1;e=this.buffer.byteLength;b>e&&this.resize((e*=2)>b?e:b);b-=d+1;m.encodeUTF16toUTF8(l(a),function(a){this.view[b++]=a}.bind(this));this.view[b++]=0;return c?(this.offset=b,this):d};d.readCString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!== +typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e,d=-1;m.decodeUTF8toUTF16(function(){if(0===d)return null;if(a>=this.limit)throw RangeError("Illegal range: Truncated data, "+a+" < "+this.limit);d=this.view[a++];return 0===d?null:d}.bind(this),e=t(),!0);return b?(this.offset=a,e()):{string:e(),length:a-c}};d.writeIString=function(a,b){var c= +"undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a),this.noAssert)[1];b+=4+d;var f=this.buffer.byteLength;b>f&&this.resize((f*=2)>b?f:b);b-=4+d;this.littleEndian?(this.view[b+ +3]=d>>>24&255,this.view[b+2]=d>>>16&255,this.view[b+1]=d>>>8&255,this.view[b]=d&255):(this.view[b]=d>>>24&255,this.view[b+1]=d>>>16&255,this.view[b+2]=d>>>8&255,this.view[b+3]=d&255);b+=4;m.encodeUTF16toUTF8(l(a),function(a){this.view[b++]=a}.bind(this));if(b!==e+4+d)throw RangeError("Illegal range: Truncated data, "+b+" == "+(b+4+d));return c?(this.offset=b,this):b-e};d.readIString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+ +a+" (not an integer)");a>>>=0;if(0>a||a+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+4) <= "+this.buffer.byteLength);}var c=a,e=this.readUint32(a);e=this.readUTF8String(e,g.METRICS_BYTES,a+=4);a+=e.length;return b?(this.offset=a,e.string):{string:e.string,length:a-c}};g.METRICS_CHARS="c";g.METRICS_BYTES="b";d.writeUTF8String=function(a,b){var c="undefined"===typeof b;c&&(b=this.offset);if(!this.noAssert){if("number"!==typeof b||0!==b%1)throw TypeError("Illegal offset: "+ +b+" (not an integer)");b>>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a))[1];b+=d;var f=this.buffer.byteLength;b>f&&this.resize((f*=2)>b?f:b);b-=d;m.encodeUTF16toUTF8(l(a),function(a){this.view[b++]=a}.bind(this));return c?(this.offset=b,this):b-e};d.writeString=d.writeUTF8String;g.calculateUTF8Chars=function(a){return m.calculateUTF16asUTF8(l(a))[0]};g.calculateUTF8Bytes=function(a){return m.calculateUTF16asUTF8(l(a))[1]}; +g.calculateString=g.calculateUTF8Bytes;d.readUTF8String=function(a,b,c){"number"===typeof b&&(c=b,b=void 0);var e="undefined"===typeof c;e&&(c=this.offset);"undefined"===typeof b&&(b=g.METRICS_CHARS);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+ +this.buffer.byteLength);}var d=0,f=c;if(b===g.METRICS_CHARS){var p=t();m.decodeUTF8(function(){return d>>=0;if(0>c||c+a>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+ +c+" (+"+a+") <= "+this.buffer.byteLength);}var h=c+a;m.decodeUTF8toUTF16(function(){return c>>=0;if(0>b||b+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+b+" (+0) <= "+this.buffer.byteLength);}var e=b;var d=m.calculateUTF16asUTF8(l(a),this.noAssert)[1];var f=g.calculateVarint32(d);b+=f+d;var p=this.buffer.byteLength;b>p&&this.resize((p*=2)>b?p:b);b-=f+d;b+=this.writeVarint32(d,b);m.encodeUTF16toUTF8(l(a),function(a){this.view[b++]=a}.bind(this));if(b!==e+d+f)throw RangeError("Illegal range: Truncated data, "+ +b+" == "+(b+d+f));return c?(this.offset=b,this):b-e};d.readVString=function(a){var b="undefined"===typeof a;b&&(a=this.offset);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal offset: "+a+" (not an integer)");a>>>=0;if(0>a||a+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+1) <= "+this.buffer.byteLength);}var c=a,e=this.readVarint32(a);e=this.readUTF8String(e.value,g.METRICS_BYTES,a+=e.length);a+=e.length;return b?(this.offset=a,e.string):{string:e.string, +length:a-c}};d.append=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var e="undefined"===typeof c;e&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}a instanceof g||(a=g.wrap(a,b));b=a.limit-a.offset;if(0>=b)return this;c+=b;var d=this.buffer.byteLength;c>d&&this.resize((d*=2)> +c?d:c);c-=b;this.view.set(a.view.subarray(a.offset,a.limit),c);a.offset+=b;e&&(this.offset+=b);return this};d.appendTo=function(a,b){a.append(this,b);return this};d.writeBytes=d.append;d.assert=function(a){this.noAssert=!a;return this};d.capacity=function(){return this.buffer.byteLength};d.clear=function(){this.offset=0;this.limit=this.buffer.byteLength;this.markedOffset=-1;return this};d.clone=function(a){var b=new g(0,this.littleEndian,this.noAssert);a?(b.buffer=new ArrayBuffer(this.buffer.byteLength), +b.view=new Uint8Array(b.buffer)):(b.buffer=this.buffer,b.view=this.view);b.offset=this.offset;b.markedOffset=this.markedOffset;b.limit=this.limit;return b};d.compact=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+ +a+" <= "+b+" <= "+this.buffer.byteLength);}if(0===a&&b===this.buffer.byteLength)return this;var c=b-a;if(0===c)return this.buffer=w,this.view=null,0<=this.markedOffset&&(this.markedOffset-=a),this.limit=this.offset=0,this;var e=new ArrayBuffer(c),d=new Uint8Array(e);d.set(this.view.subarray(a,b));this.buffer=e;this.view=d;0<=this.markedOffset&&(this.markedOffset-=a);this.offset=0;this.limit=c;return this};d.copy=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit); +if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return new g(0,this.littleEndian,this.noAssert);var c=b-a,e=new g(c,this.littleEndian,this.noAssert);e.offset=0;e.limit=c;0<=e.markedOffset&&(e.markedOffset-=a);this.copyTo(e,0,a, +b);return e};d.copyTo=function(a,b,c,e){var d,f;if(!this.noAssert&&!g.isByteBuffer(a))throw TypeError("Illegal target: Not a ByteBuffer");b=(f="undefined"===typeof b)?a.offset:b|0;c=(d="undefined"===typeof c)?this.offset:c|0;e="undefined"===typeof e?this.limit:e|0;if(0>b||b>a.buffer.byteLength)throw RangeError("Illegal target range: 0 <= "+b+" <= "+a.buffer.byteLength);if(0>c||e>this.buffer.byteLength)throw RangeError("Illegal source range: 0 <= "+c+" <= "+this.buffer.byteLength);var p=e-c;if(0=== +p)return a;a.ensureCapacity(b+p);a.view.set(this.view.subarray(c,e),b);d&&(this.offset+=p);f&&(a.offset+=p);return this};d.ensureCapacity=function(a){var b=this.buffer.byteLength;return ba?b:a):this};d.fill=function(a,b,c){var e="undefined"===typeof b;e&&(b=this.offset);"string"===typeof a&&0>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal end: Not an integer");c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(b>=c)return this;for(;b>>=0;if(0>a||a+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+a+" (+0) <= "+this.buffer.byteLength);}this.markedOffset=a;return this};d.order=function(a){if(!this.noAssert&&"boolean"!==typeof a)throw TypeError("Illegal littleEndian: Not a boolean");this.littleEndian=!!a;return this};d.LE=function(a){this.littleEndian="undefined"!==typeof a?!!a:!0; +return this};d.BE=function(a){this.littleEndian="undefined"!==typeof a?!a:!1;return this};d.prepend=function(a,b,c){if("number"===typeof b||"string"!==typeof b)c=b,b=void 0;var e="undefined"===typeof c;e&&(c=this.offset);if(!this.noAssert){if("number"!==typeof c||0!==c%1)throw TypeError("Illegal offset: "+c+" (not an integer)");c>>>=0;if(0>c||c+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+c+" (+0) <= "+this.buffer.byteLength);}a instanceof g||(a=g.wrap(a,b));b=a.limit-a.offset; +if(0>=b)return this;var d=b-c;if(0a)throw RangeError("Illegal capacity: 0 <= "+ +a);}if(this.buffer.byteLength>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+ +a+" <= "+b+" <= "+this.buffer.byteLength);}if(a===b)return this;Array.prototype.reverse.call(this.view.subarray(a,b));return this};d.skip=function(a){if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal length: "+a+" (not an integer)");a|=0}var b=this.offset+a;if(!this.noAssert&&(0>b||b>this.buffer.byteLength))throw RangeError("Illegal length: 0 <= "+this.offset+" + "+a+" <= "+this.buffer.byteLength);this.offset=b;return this};d.slice=function(a,b){"undefined"===typeof a&&(a= +this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer");a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}var c=this.clone();c.offset=a;c.limit=b;return c};d.toBuffer=function(a){var b=this.offset,c=this.limit;if(!this.noAssert){if("number"!== +typeof b||0!==b%1)throw TypeError("Illegal offset: Not an integer");b>>>=0;if("number"!==typeof c||0!==c%1)throw TypeError("Illegal limit: Not an integer");c>>>=0;if(0>b||b>c||c>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+b+" <= "+c+" <= "+this.buffer.byteLength);}if(!a&&0===b&&c===this.buffer.byteLength)return this.buffer;if(b===c)return w;a=new ArrayBuffer(c-b);(new Uint8Array(a)).set((new Uint8Array(this.buffer)).subarray(b,c),0);return a};d.toArrayBuffer=d.toBuffer;d.toString= +function(a,b,c){if("undefined"===typeof a)return"ByteBufferAB(offset="+this.offset+",markedOffset="+this.markedOffset+",limit="+this.limit+",capacity="+this.capacity()+")";"number"===typeof a&&(c=b=a="utf8");switch(a){case "utf8":return this.toUTF8(b,c);case "base64":return this.toBase64(b,c);case "hex":return this.toHex(b,c);case "binary":return this.toBinary(b,c);case "debug":return this.toDebug();case "columns":return this.toColumns();default:throw Error("Unsupported encoding: "+a);}};var z=function(){for(var a= +{},b=[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,43,47],c=[],e=0,d=b.length;e>2&63]),d=(e&3)<<4,null!==(e=a())?(d|=e>>4&15,c(b[(d|e>>4&15)&63]),d=(e&15)<<2,null!==(e=a())?(c(b[(d|e>>6&3)&63]),c(b[e&63])):(c(b[d&63]),c(61))):(c(b[d&63]),c(61),c(61))};a.decode=function(a, +b){function e(a){throw Error("Illegal character code: "+a);}for(var d,k,f;null!==(d=a());)if(k=c[d],"undefined"===typeof k&&e(d),null!==(d=a())&&(f=c[d],"undefined"===typeof f&&e(d),b(k<<2>>>0|(f&48)>>4),null!==(d=a()))){k=c[d];if("undefined"===typeof k)if(61===d)break;else e(d);b((f&15)<<4>>>0|(k&60)>>2);if(null!==(d=a())){f=c[d];if("undefined"===typeof f)if(61===d)break;else e(d);b((k&3)<<6>>>0|f)}}};a.test=function(a){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(a)}; +return a}();d.toBase64=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);a|=0;b|=0;if(0>a||b>this.capacity||a>b)throw RangeError("begin, end");var c;z.encode(function(){return aa||b>this.capacity()||a>b)throw RangeError("begin, end");if(a===b)return"";for(var c=[],e=[];ae?d+("0"+e.toString(16).toUpperCase()):d+e.toString(16).toUpperCase(),a&&(f+=32e?String.fromCharCode(e):"."));++b;if(a&&0d.length;)d+=" ";g+=d+f+"\n";d=f=""}d=b===this.offset&&b===this.limit?d+(b===this.markedOffset?"!":"|"):b===this.offset? +d+(b===this.markedOffset?"[":"<"):b===this.limit?d+(b===this.markedOffset?"]":">"):d+(b===this.markedOffset?"'":a||0!==b&&b!==c?" ":"")}if(a&&" "!==d){for(;51>d.length;)d+=" ";g+=d+f+"\n"}return a?g:d};g.fromDebug=function(a,b,c){var e=a.length;b=new g((e+1)/3|0,b,c);for(var d=0,f=0,h,l=!1,n=!1,m=!1,q=!1,r=!1;d":if(!c){if(q){r=!0;break}q=!0}b.limit=f;l=!1;break;case "'":if(!c){if(m){r=!0;break}m=!0}b.markedOffset=f;l=!1;break;case " ":l=!1;break;default:if(!c&&l)r=!0;else{h=parseInt(h+a.charAt(d++),16);if(!c&&(isNaN(h)||0>h||255>>=0;if("number"!==typeof b|| +0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}for(var c=Array(b-a),e;ae?c.push("0",e.toString(16)):c.push(e.toString(16));return c.join("")};g.fromHex=function(a,b,c){if(!c){if("string"!==typeof a)throw TypeError("Illegal str: Not a string");if(0!==a.length%2)throw TypeError("Illegal str: Length not a multiple of 2");}var e=a.length;b=new g(e/ +2|0,b);for(var d,f=0,h=0;fd||255b?c(b&127):(2048>b?c(b>>6&31|192):65536>b?(c(b>>12&15|224),c(b>>6&63|128)):(c(b>>18&7|240),c(b>>12&63|128),c(b>>6&63|128)),c(b&63|128)), +b=null},decodeUTF8:function(a,c){for(var b,d,f,g,h=function(a){a=a.slice(0,a.indexOf(null));var b=Error(a.toString());b.name="TruncatedError";b.bytes=a;throw b;};null!==(b=a());)if(0===(b&128))c(b);else if(192===(b&224))null===(d=a())&&h([b,d]),c((b&31)<<6|d&63);else if(224===(b&240))null!==(d=a())&&null!==(f=a())||h([b,d,f]),c((b&15)<<12|(d&63)<<6|f&63);else if(240===(b&248))null!==(d=a())&&null!==(f=a())&&null!==(g=a())||h([b,d,f,g]),c((b&7)<<18|(d&63)<<12|(f&63)<<6|g&63);else throw RangeError("Illegal starting byte: "+ +b);},UTF16toUTF8:function(a,c){for(var b,d=null;null!==(b=null!==d?d:a());)55296<=b&&57343>=b&&null!==(d=a())&&56320<=d&&57343>=d?(c(1024*(b-55296)+d-56320+65536),d=null):c(b);null!==d&&c(d)},UTF8toUTF16:function(a,c){var b=null;"number"===typeof a&&(b=a,a=function(){return null});for(;null!==b||null!==(b=a());)65535>=b?c(b):(b-=65536,c((b>>10)+55296),c(b%1024+56320)),b=null},encodeUTF16toUTF8:function(b,c){a.UTF16toUTF8(b,function(b){a.encodeUTF8(b,c)})},decodeUTF8toUTF16:function(b,c){a.decodeUTF8(b, +function(b){a.UTF8toUTF16(b,c)})},calculateCodePoint:function(a){return 128>a?1:2048>a?2:65536>a?3:4},calculateUTF8:function(a){for(var b,d=0;null!==(b=a());)d+=128>b?1:2048>b?2:65536>b?3:4;return d},calculateUTF16asUTF8:function(b){var c=0,d=0;a.UTF16toUTF8(b,function(a){++c;d+=128>a?1:2048>a?2:65536>a?3:4});return[c,d]}};return a}();d.toUTF8=function(a,b){"undefined"===typeof a&&(a=this.offset);"undefined"===typeof b&&(b=this.limit);if(!this.noAssert){if("number"!==typeof a||0!==a%1)throw TypeError("Illegal begin: Not an integer"); +a>>>=0;if("number"!==typeof b||0!==b%1)throw TypeError("Illegal end: Not an integer");b>>>=0;if(0>a||a>b||b>this.buffer.byteLength)throw RangeError("Illegal range: 0 <= "+a+" <= "+b+" <= "+this.buffer.byteLength);}var c;try{m.decodeUTF8toUTF16(function(){return a} */ -ByteBufferPrototype.readBitSet = function(offset) {}; +ByteBuffer.prototype.readBitSet = function(offset) {}; /** - * @param {Array} - * @param {number=} + * @param {Array} value + * @param {number=} offset * @returns {!ByteBuffer} */ ByteBuffer.prototype.writeBitSet = function(value, offset) {}; diff --git a/src/methods/append.js b/src/methods/append.js index c8fd87d..1dcefa7 100644 --- a/src/methods/append.js +++ b/src/methods/append.js @@ -56,3 +56,20 @@ ByteBufferPrototype.appendTo = function(target, offset) { return this; }; +/** + * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. + * @function + //? if (NODE) { + * @param {!ByteBuffer|!Buffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its + * offsets will be modified according to the performed read operation. + //? } else { + * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets + * will be modified according to the performed read operation. + //? } + * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") + * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes + * written if omitted. + * @returns {!ByteBuffer} this + * @expose + */ +ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; diff --git a/src/types/bytes/bytes.js b/src/types/bytes/bytes.js index df17180..18fc3d0 100644 --- a/src/types/bytes/bytes.js +++ b/src/types/bytes/bytes.js @@ -15,20 +15,3 @@ ByteBufferPrototype.readBytes = function(length, offset) { return slice; }; -/** - * Writes a payload of bytes. This is an alias of {@link ByteBuffer#append}. - * @function - //? if (NODE) { - * @param {!ByteBuffer|!Buffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its - * offsets will be modified according to the performed read operation. - //? } else { - * @param {!ByteBuffer|!ArrayBuffer|!Uint8Array|string} source Data to write. If `source` is a ByteBuffer, its offsets - * will be modified according to the performed read operation. - //? } - * @param {(string|number)=} encoding Encoding if `data` is a string ("base64", "hex", "binary", defaults to "utf8") - * @param {number=} offset Offset to write to. Will use and increase {@link ByteBuffer#offset} by the number of bytes - * written if omitted. - * @returns {!ByteBuffer} this - * @expose - */ -ByteBufferPrototype.writeBytes = ByteBufferPrototype.append; diff --git a/src/types/floats/float32.js b/src/types/floats/float32.js index ab5f4a7..a9208ae 100644 --- a/src/types/floats/float32.js +++ b/src/types/floats/float32.js @@ -22,8 +22,8 @@ ByteBufferPrototype.writeFloat32 = function(value, offset) { //? ENSURE_CAPACITY(4); //? if (NODE) { // FIXME: Is there any way to inline the following in a sane way? this.littleEndian - ? this.buffer.writeFloatLE(value, offset, true) - : this.buffer.writeFloatBE(value, offset, true); + ? this.buffer.writeFloatLE(value, offset) + : this.buffer.writeFloatBE(value, offset); //? } else if (DATAVIEW) this.view.setFloat32(offset, value, this.littleEndian); //? else diff --git a/src/types/floats/float64.js b/src/types/floats/float64.js index 30b3041..5a2584c 100644 --- a/src/types/floats/float64.js +++ b/src/types/floats/float64.js @@ -18,8 +18,8 @@ ByteBufferPrototype.writeFloat64 = function(value, offset) { //? ENSURE_CAPACITY(8); //? if (NODE) { this.littleEndian - ? this.buffer.writeDoubleLE(value, offset, true) - : this.buffer.writeDoubleBE(value, offset, true); + ? this.buffer.writeDoubleLE(value, offset) + : this.buffer.writeDoubleBE(value, offset); //? } else if (DATAVIEW) this.view.setFloat64(offset, value, this.littleEndian); //? else @@ -53,8 +53,8 @@ ByteBufferPrototype.readFloat64 = function(offset) { } //? if (NODE) { var value = this.littleEndian - ? this.buffer.readDoubleLE(offset, true) - : this.buffer.readDoubleBE(offset, true); + ? this.buffer.readDoubleLE(offset) + : this.buffer.readDoubleBE(offset); //? } else if (DATAVIEW) var value = this.view.getFloat64(offset, this.littleEndian); //? else diff --git a/tests/suite.js b/tests/suite.js index 1e3829c..6de8c55 100644 --- a/tests/suite.js +++ b/tests/suite.js @@ -130,7 +130,7 @@ function makeSuite(ByteBuffer) { buf[0] = 0x01; var bb = ByteBuffer.wrap(buf); test.strictEqual(bb.capacity(), 1); - test.strictEqual(bb.buffer, buf); + test.deepStrictEqual(bb.buffer, buf); test.strictEqual(bb.toDebug(), "<01>"); test.done(); }; @@ -451,6 +451,20 @@ function makeSuite(ByteBuffer) { test.equal(bb2.toString("debug"), "56 78|"); test.done(); }; + + suite.methods.writeBytes = function(test) { + var bb = ByteBuffer.wrap("\x12\x34"); + var bb2 = ByteBuffer.wrap("\x56\x78"); + bb.offset = 2; + bb.writeBytes(bb2); // Modifies offsets of both + test.equal(bb.toString("debug"), "12 34>56 78<"); + test.equal(bb2.toString("debug"), "56 78|"); + bb2.reset(); + bb.writeBytes(bb2, 1); // Modifies offsets of bb2 only + test.equal(bb.toString("debug"), "12 56>78 78<"); + test.equal(bb2.toString("debug"), "56 78|"); + test.done(); + }; suite.methods.prepend = function(test) { var bb = ByteBuffer.wrap("\x12\x34"),