msgpack-lite 0.1.20 → 0.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/.npmignore +1 -0
  2. package/.travis.yml +1 -0
  3. package/.zuul.yml +1 -1
  4. package/Makefile +2 -2
  5. package/README.md +27 -7
  6. package/dist/msgpack.min.js +2 -2
  7. package/lib/buffer-global.js +11 -0
  8. package/lib/buffer-lite.js +88 -60
  9. package/lib/bufferish-array.js +41 -0
  10. package/lib/bufferish-buffer.js +46 -0
  11. package/lib/bufferish-proto.js +86 -0
  12. package/lib/bufferish-uint8array.js +51 -0
  13. package/lib/bufferish.js +108 -0
  14. package/lib/codec-base.js +67 -0
  15. package/lib/codec.js +8 -1
  16. package/lib/decode-buffer.js +6 -50
  17. package/lib/encode-buffer.js +6 -79
  18. package/lib/ext-buffer.js +3 -1
  19. package/lib/ext-packer.js +78 -0
  20. package/lib/ext-unpacker.js +81 -0
  21. package/lib/ext.js +4 -77
  22. package/lib/flex-buffer.js +194 -0
  23. package/lib/read-core.js +36 -2
  24. package/lib/read-format.js +83 -56
  25. package/lib/read-token.js +1 -1
  26. package/lib/write-core.js +55 -2
  27. package/lib/write-token.js +54 -26
  28. package/lib/write-type.js +81 -73
  29. package/lib/write-uint8.js +2 -2
  30. package/package.json +23 -13
  31. package/test/10.encode.js +50 -30
  32. package/test/11.decode.js +2 -0
  33. package/test/14.codec.js +8 -1
  34. package/test/16.binarraybuffer.js +91 -0
  35. package/test/17.uint8array.js +43 -0
  36. package/test/18.utf8.js +59 -0
  37. package/test/20.roundtrip.js +53 -33
  38. package/test/23.extbuffer.js +44 -2
  39. package/test/27.usemap.js +66 -0
  40. package/test/61.encode-only.js +26 -0
  41. package/test/62.decode-only.js +23 -0
  42. package/test/63.module-deps.js +77 -0
  43. package/lib/buffer-shortage.js +0 -8
  44. package/lib/ext-preset.js +0 -188
  45. package/test/60.buffer-lite.js +0 -98
package/.npmignore CHANGED
@@ -5,3 +5,4 @@ node_modules/
5
5
  *.browserify.js
6
6
  *.js.gz
7
7
  gh-pages/
8
+ *.log
package/.travis.yml CHANGED
@@ -10,6 +10,7 @@ matrix:
10
10
  - node_js: "0.12"
11
11
  - node_js: "4"
12
12
  - node_js: "5"
13
+ - node_js: "6"
13
14
 
14
15
  env:
15
16
  global:
package/.zuul.yml CHANGED
@@ -15,6 +15,6 @@ browsers:
15
15
  - name: safari
16
16
  version: "7..latest"
17
17
  - name: iphone
18
- version: ["7.1", "8.4", "9.2..latest"]
18
+ version: ["7.1", "8.4", "9.3..latest"]
19
19
  - name: android
20
20
  version: ["4.1", "4.4", "5.1..latest"]
package/Makefile CHANGED
@@ -13,7 +13,7 @@ JSDEST=./dist/msgpack.min.js
13
13
  all: test $(JSDEST)
14
14
 
15
15
  clean:
16
- rm -fr $(JSDEST) $(DOC_HTML)
16
+ rm -fr $(JSDEST) $(JSTEMP)
17
17
 
18
18
  $(DIST):
19
19
  mkdir -p $(DIST)
@@ -22,7 +22,7 @@ $(JSTEMP): $(LIB) $(DIST)
22
22
  ./node_modules/.bin/browserify -s $(CLASS) $(SRC) -o $(JSTEMP) --debug
23
23
 
24
24
  $(JSDEST): $(JSTEMP)
25
- ./node_modules/.bin/uglifyjs $(JSTEMP) -c -m -o $(JSDEST)
25
+ ./node_modules/.bin/uglifyjs $(JSTEMP) -c -m -r Buffer -o $(JSDEST)
26
26
  ls -l $(JSDEST)
27
27
 
28
28
  test:
package/README.md CHANGED
@@ -13,7 +13,7 @@ Online demo: [http://kawanet.github.io/msgpack-lite/](http://kawanet.github.io/m
13
13
  - Even faster than node-gyp C++ based [msgpack](https://www.npmjs.com/package/msgpack) library (**90% faster** on encoding)
14
14
  - Streaming encoding and decoding interface is also available. It's more faster.
15
15
  - Ready for [Web browsers](https://saucelabs.com/u/msgpack-lite) including Chrome, Firefox, Safari and even IE8
16
- - [Tested](https://travis-ci.org/kawanet/msgpack-lite) on Node.js v0.10, v0.12, v4 and v5 as well as Web browsers
16
+ - [Tested](https://travis-ci.org/kawanet/msgpack-lite) on Node.js v0.10, v0.12, v4, v5 and v6 as well as Web browsers
17
17
 
18
18
  ### Encoding and Decoding MessagePack
19
19
 
@@ -111,7 +111,7 @@ http://localhost:4000/__zuul
111
111
 
112
112
  ### Browser Build
113
113
 
114
- Browser version [msgpack.min.js](https://rawgit.com/kawanet/msgpack-lite/master/dist/msgpack.min.js) is also available. 44KB minified, 13KB gziped.
114
+ Browser version [msgpack.min.js](https://rawgit.com/kawanet/msgpack-lite/master/dist/msgpack.min.js) is also available. 50KB minified, 14KB gziped.
115
115
 
116
116
  ```html
117
117
  <!--[if lte IE 9]>
@@ -190,7 +190,7 @@ It counts operations of [1KB JSON document](https://github.com/kawanet/msgpack-l
190
190
 
191
191
  ```sh
192
192
  $ npm install msgpack msgpack-js msgpack-js-v5 msgpack-unpack msgpack5 notepack
193
- $ node lib/benchmark.js 10
193
+ $ npm run benchmark 10
194
194
  ```
195
195
 
196
196
  operation | op | ms | op/s
@@ -218,7 +218,7 @@ It counts milliseconds for 1,000,000 operations of 30 bytes fluentd msgpack frag
218
218
  This shows streaming encoding and decoding are super faster.
219
219
 
220
220
  ```sh
221
- $ node lib/benchmark-stream.js 2
221
+ $ npm run benchmark-stream 2
222
222
  ```
223
223
 
224
224
  operation (1000000 x 2) | op | ms | op/s
@@ -249,7 +249,8 @@ Number (64bit double)|float format family|Number (double)
249
249
  String|str format family|String
250
250
  Buffer|bin format family|Buffer
251
251
  Array|array format family|Array
252
- Object (plain object)|map format family|Object
252
+ Map|map format family|Map (if `usemap=true`)
253
+ Object (plain object)|map format family|Object (or Map if `usemap=true`)
253
254
  Object (see below)|ext format family|Object (see below)
254
255
 
255
256
  Note that both `null` and `undefined` are mapped to nil `0xC1` type.
@@ -274,7 +275,7 @@ Type|Object|Type|Object
274
275
  0x08||0x18|Float64Array
275
276
  0x09||0x19|Uint8ClampedArray
276
277
  0x0A|RegExp|0x1A|ArrayBuffer
277
- 0x0B|Boolean|0x1B|
278
+ 0x0B|Boolean|0x1B|Buffer
278
279
  0x0C|String|0x1C|
279
280
  0x0D|Date|0x1D|DataView
280
281
  0x0E|Error|0x1E|
@@ -353,12 +354,31 @@ var codec = msgpack.createCodec({safe: true});
353
354
  var codec = msgpack.createCodec({useraw: true});
354
355
  ```
355
356
 
356
- `int64`: It decodes msgpack's int64/uint64 formats with [int64-buffer](https://github.com/kawanet/int64-buffer) object.
357
+ `int64`: It decodes msgpack's `int64`/`uint64` formats with [int64-buffer](https://github.com/kawanet/int64-buffer) object.
357
358
 
358
359
  ```js
359
360
  var codec = msgpack.createCodec({int64: true});
360
361
  ```
361
362
 
363
+ `binarraybuffer`: It ties msgpack's `bin` format with `ArrayBuffer` object, instead of `Buffer` object.
364
+
365
+ ```js
366
+ var codec = msgpack.createCodec({binarraybuffer: true, preset: true});
367
+ ```
368
+
369
+ `uint8array`: It returns Uint8Array object when encoding, instead of `Buffer` object.
370
+
371
+ ```js
372
+ var codec = msgpack.createCodec({uint8array: true});
373
+ ```
374
+
375
+ `usemap`: Uses the global JavaScript Map type, if available, to unpack
376
+ MessagePack map elements.
377
+
378
+ ```js
379
+ var codec = msgpack.createCodec({usemap: true});
380
+ ```
381
+
362
382
  ### Compatibility Mode
363
383
 
364
384
  The [compatibility mode](https://github.com/kawanet/msgpack-lite/issues/22) respects for [msgpack's old spec](https://github.com/msgpack/msgpack/blob/master/spec-old.md). Set `true` to `useraw`.
@@ -1,2 +1,2 @@
1
- !function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r;r="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,r.msgpack=t()}}(function(){return function t(r,e,n){function o(f,u){if(!e[f]){if(!r[f]){var a="function"==typeof require&&require;if(!u&&a)return a(f,!0);if(i)return i(f,!0);var s=new Error("Cannot find module '"+f+"'");throw s.code="MODULE_NOT_FOUND",s}var c=e[f]={exports:{}};r[f][0].call(c.exports,function(t){var e=r[f][1][t];return o(e?e:t)},c,c.exports,t,r,e,n)}return e[f].exports}for(var i="function"==typeof require&&require,f=0;f<n.length;f++)o(n[f]);return o}({1:[function(t,r,e){e.encode=t("./encode").encode,e.decode=t("./decode").decode,e.Encoder=t("./encoder").Encoder,e.Decoder=t("./decoder").Decoder,e.createCodec=t("./ext").createCodec,e.codec=t("./codec").codec},{"./codec":4,"./decode":6,"./decoder":7,"./encode":9,"./encoder":10,"./ext":13}],2:[function(t,r,e){function n(t,r){for(var e=this,n=r||0,o=t.length,i=0;o>i;i++){var f=t.charCodeAt(i);128>f?e[n++]=f:2048>f?(e[n++]=192|f>>6,e[n++]=128|63&f):(e[n++]=224|f>>12,e[n++]=128|f>>6&63,e[n++]=128|63&f)}return n-r}function o(t,r){var e=this,n=t-0||0;r||(r=e.length);var o=r-t;o>p&&(o=p);for(var i=[];r>n;){for(var f=new Array(o),u=0;o>u&&r>n;){var a=e[n++];a=128>a?a:224>a?(63&a)<<6|63&e[n++]:(63&a)<<12|(63&e[n++])<<6|63&e[n++],f[u++]=a}o>u&&(f=f.slice(0,u)),i.push(String.fromCharCode.apply("",f))}return i.length>1?i.join(""):i.length?i.shift():""}function i(t){var r=0;return Array.prototype.forEach.call(t,function(t){var e=t.charCodeAt(0);r+=128>e?1:2048>e?2:3}),r}function f(t,r,e,n){var o;e||(e=0),n||0===n||(n=this.length),r||(r=0);var i=n-e;if(t===this&&r>e&&n>r)for(o=i-1;o>=0;o--)t[o+r]=this[o+e];else for(o=0;i>o;o++)t[o+r]=this[o+e];return i}function u(t,r){new c(this,r,t)}function a(t,r){new h(this,r,t)}var s=t("int64-buffer"),c=s.Uint64BE,h=s.Int64BE,p=8192;e.writeString=n,e.readString=o,e.byteLength=i,e.copy=f,e.writeUint64BE=u,e.writeInt64BE=a},{"int64-buffer":26}],3:[function(t,r,e){function n(){}e.BufferShortageError=n,n.prototype=Error.prototype},{}],4:[function(t,r,e){e.codec={preset:t("./ext").createCodec({preset:!0})}},{"./ext":13}],5:[function(t,r,e){(function(r){function n(t){return this instanceof n?void(t&&(this.options=t,t.codec&&(this.codec=t.codec))):new n(t)}e.DecodeBuffer=n;var o=t("./codec").codec.preset,i=t("./buffer-shortage").BufferShortageError;n.prototype.offset=0,n.prototype.push=function(t){var r=this.buffers||(this.buffers=[]);r.push(t)},n.prototype.codec=o,n.prototype.write=function(t){var e=this.offset?this.buffer.slice(this.offset):this.buffer;this.buffer=e?t?r.concat([e,t]):e:t,this.offset=0},n.prototype.read=function(){var t=this.buffers&&this.buffers.length;return t?(this.flush(),this.pull()):this.fetch()},n.prototype.pull=function(){var t=this.buffers||(this.buffers=[]);return t.shift()},n.prototype.fetch=function(){return this.codec.decode(this)},n.prototype.flush=function(){for(;this.offset<this.buffer.length;){var t,r=this.offset;try{t=this.fetch()}catch(e){if(!(e instanceof i))throw e;this.offset=r;break}this.push(t)}}}).call(this,t("buffer").Buffer)},{"./buffer-shortage":3,"./codec":4,buffer:21}],6:[function(t,r,e){function n(t,r){var e=new o(r);return e.write(t),e.read()}e.decode=n;var o=t("./decode-buffer").DecodeBuffer},{"./decode-buffer":5}],7:[function(t,r,e){function n(t){return this instanceof n?void i.call(this,t):new n(t)}e.Decoder=n;var o=t("event-lite"),i=t("./decode-buffer").DecodeBuffer;n.prototype=new i,o.mixin(n.prototype),n.prototype.decode=function(t){arguments.length&&this.write(t),this.flush()},n.prototype.push=function(t){this.emit("data",t)},n.prototype.end=function(t){this.decode(t),this.emit("end")}},{"./decode-buffer":5,"event-lite":24}],8:[function(t,r,e){(function(r){function n(t){return this instanceof n?void(t&&(this.options=t,t.codec&&(this.codec=t.codec))):new n(t)}e.EncodeBuffer=n;var o=t("./codec").codec.preset,i=2048,f=65536;n.prototype.offset=0,n.prototype.start=0,n.prototype.push=function(t){var r=this.buffers||(this.buffers=[]);r.push(t)},n.prototype.codec=o,n.prototype.write=function(t){this.codec.encode(this,t)},n.prototype.read=function(){var t=this.buffers&&this.buffers.length;return t?(this.flush(),this.pull()):this.fetch()},n.prototype.pull=function(){var t=this.buffers||(this.buffers=[]),e=t.length>1?r.concat(t):t[0];return t.length=0,e},n.prototype.fetch=function(){var t=this.start;return t<this.offset?(this.start=this.offset,this.buffer.slice(t,this.offset)):void 0},n.prototype.flush=function(){var t=this.fetch();t&&this.push(t)},n.prototype.reserve=function(t){if(this.buffer){var e=this.buffer.length;if(this.offset+t<e)return;this.flush(),t=Math.max(t,Math.min(2*e,f))}t=t>i?t:i,this.buffer=new r(t),this.start=0,this.offset=0},n.prototype.send=function(t){var r=this.offset+t.length;this.buffer&&r<this.buffer.length?(t.copy(this.buffer,this.offset),this.offset=r):(this.flush(),this.push(t))}}).call(this,t("buffer").Buffer)},{"./codec":4,buffer:21}],9:[function(t,r,e){function n(t,r){var e=new o(r);return e.write(t),e.read()}e.encode=n;var o=t("./encode-buffer").EncodeBuffer},{"./encode-buffer":8}],10:[function(t,r,e){function n(t){return this instanceof n?void i.call(this,t):new n(t)}e.Encoder=n;var o=t("event-lite"),i=t("./encode-buffer").EncodeBuffer;n.prototype=new i,o.mixin(n.prototype),n.prototype.encode=function(t){this.write(t),this.emit("data",this.read())},n.prototype.end=function(t){arguments.length&&this.encode(t),this.flush(),this.emit("end")}},{"./encode-buffer":8,"event-lite":24}],11:[function(t,r,e){function n(t,r){return this instanceof n?(this.buffer=t,void(this.type=r)):new n(t,r)}e.ExtBuffer=n},{}],12:[function(t,r,e){(function(r){function n(r){function e(r){return d||(d=t("./encode").encode),d(r)}function n(r){return y||(y=t("./decode").decode),y(r)}r.addExtPacker(14,Error,[a,e]),r.addExtPacker(1,EvalError,[a,e]),r.addExtPacker(2,RangeError,[a,e]),r.addExtPacker(3,ReferenceError,[a,e]),r.addExtPacker(4,SyntaxError,[a,e]),r.addExtPacker(5,TypeError,[a,e]),r.addExtPacker(6,URIError,[a,e]),r.addExtUnpacker(14,[n,s(Error)]),r.addExtUnpacker(1,[n,s(EvalError)]),r.addExtUnpacker(2,[n,s(RangeError)]),r.addExtUnpacker(3,[n,s(ReferenceError)]),r.addExtUnpacker(4,[n,s(SyntaxError)]),r.addExtUnpacker(5,[n,s(TypeError)]),r.addExtUnpacker(6,[n,s(URIError)]),r.addExtPacker(10,RegExp,[f,e]),r.addExtPacker(11,Boolean,[i,e]),r.addExtPacker(12,String,[i,e]),r.addExtPacker(13,Date,[Number,e]),r.addExtPacker(15,Number,[i,e]),r.addExtUnpacker(10,[n,u]),r.addExtUnpacker(11,[n,c(Boolean)]),r.addExtUnpacker(12,[n,c(String)]),r.addExtUnpacker(13,[n,c(Date)]),r.addExtUnpacker(15,[n,c(Number)]),"undefined"!=typeof Uint8Array&&(r.addExtPacker(17,Int8Array,o),r.addExtPacker(18,Uint8Array,o),r.addExtPacker(19,Int16Array,h),r.addExtPacker(20,Uint16Array,h),r.addExtPacker(21,Int32Array,h),r.addExtPacker(22,Uint32Array,h),r.addExtPacker(23,Float32Array,h),r.addExtUnpacker(17,c(Int8Array)),r.addExtUnpacker(18,c(Uint8Array)),r.addExtUnpacker(19,[l,c(Int16Array)]),r.addExtUnpacker(20,[l,c(Uint16Array)]),r.addExtUnpacker(21,[l,c(Int32Array)]),r.addExtUnpacker(22,[l,c(Uint32Array)]),r.addExtUnpacker(23,[l,c(Float32Array)]),"undefined"!=typeof Float64Array&&(r.addExtPacker(24,Float64Array,h),r.addExtUnpacker(24,[l,c(Float64Array)])),"undefined"!=typeof Uint8ClampedArray&&(r.addExtPacker(25,Uint8ClampedArray,o),r.addExtUnpacker(25,c(Uint8ClampedArray))),r.addExtPacker(26,ArrayBuffer,p),r.addExtPacker(29,DataView,h),r.addExtUnpacker(26,l),r.addExtUnpacker(29,[l,c(DataView)]))}function o(t){return new r(t)}function i(t){return t.valueOf()}function f(t){t=RegExp.prototype.toString.call(t).split("/"),t.shift();var r=[t.pop()];return r.unshift(t.join("/")),r}function u(t){return RegExp.apply(null,t)}function a(t){var r={};for(var e in g)r[e]=t[e];return r}function s(t){return function(r){var e=new t;for(var n in g)e[n]=r[n];return e}}function c(t){return function(r){return new t(r)}}function h(t){return new r(new Uint8Array(t.buffer))}function p(t){return new r(new Uint8Array(t))}function l(t){return new Uint8Array(t).buffer}e.setExtPreset=n;var d,y,g={name:1,message:1,stack:1,columnNumber:1,fileName:1,lineNumber:1}}).call(this,t("buffer").Buffer)},{"./decode":6,"./encode":9,buffer:21}],13:[function(t,r,e){function n(t){return this instanceof n?(this.extPackers={},this.extUnpackers=[],this.encode=c.getEncoder(t),this.decode=s.getDecoder(t),void(t&&t.preset&&a.setExtPreset(this))):new n(t)}function o(t){return new n(t)}function i(t){function r(t,r){return r(t)}return t=t.slice(),function(e){return t.reduce(r,e)}}var f=t("isarray");e.createCodec=o;var u=t("./ext-buffer").ExtBuffer,a=t("./ext-preset"),s=t("./read-core"),c=t("./write-core");n.prototype.addExtPacker=function(t,r,e){function n(r){var n=e(r);return new u(n,t)}f(e)&&(e=i(e));var o=r.name;if(o&&"Object"!==o)this.extPackers[o]=n;else{var a=this.extEncoderList||(this.extEncoderList=[]);a.unshift([r,n])}},n.prototype.addExtUnpacker=function(t,r){this.extUnpackers[t]=f(r)?i(r):r},n.prototype.getExtPacker=function(t){var r=t.constructor,e=r&&r.name&&this.extPackers[r.name];if(e)return e;var n=this.extEncoderList;if(n)for(var o=n.length,i=0;o>i;i++){var f=n[i];if(r===f[0])return f[1]}},n.prototype.getExtUnpacker=function(t){function r(r){return new u(r,t)}return this.extUnpackers[t]||r}},{"./ext-buffer":11,"./ext-preset":12,"./read-core":14,"./write-core":17,isarray:27}],14:[function(t,r,e){function n(t){function r(t){var r=o(t),n=e[r];if(!n)throw new Error("Invalid type: "+(r?"0x"+r.toString(16):r));return n(t)}var e=i.getReadToken(t);return r}e.getDecoder=n;var o=t("./read-format").readUint8,i=t("./read-token")},{"./read-format":15,"./read-token":16}],15:[function(t,r,e){(function(r){function n(t){var e={map:o,array:i,str:f,bin:u,ext:a,uint8:s,uint16:c,uint32:h(4,r.prototype.readUInt32BE),uint64:h(8,p),int8:h(1,r.prototype.readInt8),int16:h(2,r.prototype.readInt16BE),int32:h(4,r.prototype.readInt32BE),int64:h(8,l),float32:h(4,g),float64:h(8,v)};return t&&t.int64&&(e.uint64=h(8,d),e.int64=h(8,y)),e}function o(t,r){var e,n={},o=new Array(r),i=new Array(r),f=t.codec.decode;for(e=0;r>e;e++)o[e]=f(t),i[e]=f(t);for(e=0;r>e;e++)n[o[e]]=i[e];return n}function i(t,r){for(var e=new Array(r),n=t.codec.decode,o=0;r>o;o++)e[o]=n(t);return e}function f(t,e){var n=t.offset,o=t.offset=n+e,i=t.buffer;if(o>i.length)throw new m;return x||!r.isBuffer(i)?U.readString.call(i,n,o):i.toString("utf-8",n,o)}function u(t,r){var e=t.offset,n=t.offset=e+r;if(n>t.buffer.length)throw new m;return w.call(t.buffer,e,n)}function a(t,r){var e=t.offset,n=t.offset=e+r+1;if(n>t.buffer.length)throw new m;var o=t.buffer[e],i=t.codec.getExtUnpacker(o);if(!i)throw new Error("Invalid ext type: "+(o?"0x"+o.toString(16):o));var f=w.call(t.buffer,e+1,n);return i(f)}function s(t){var r=t.buffer;if(t.offset>=r.length)throw new m;return r[t.offset++]}function c(t){var r=t.buffer;if(t.offset+2>r.length)throw new m;return r[t.offset++]<<8|r[t.offset++]}function h(t,r){return function(e){var n=e.offset,o=e.offset=n+t;if(o>e.buffer.length)throw new m;return r.call(e.buffer,n,P)}}function p(t){return new A(this,t).toNumber()}function l(t){return new B(this,t).toNumber()}function d(t){return new A(this,t)}function y(t){return new B(this,t)}function g(t){return this.readFloatBE?this.readFloatBE(t):E.read(this,t,!1,23,4)}function v(t){return this.readDoubleBE?this.readDoubleBE(t):E.read(this,t,!1,52,8)}function w(t,e){var n=this.slice||Array.prototype.slice,o=n.call(this,t,e);return r.isBuffer(o)||(o=r(o)),o}var E=t("ieee754"),b=t("int64-buffer"),A=b.Uint64BE,B=b.Int64BE;e.getReadFormat=n,e.readUint8=s;var U=t("./buffer-lite"),m=t("./buffer-shortage").BufferShortageError,x="TYPED_ARRAY_SUPPORT"in r,P=!0}).call(this,t("buffer").Buffer)},{"./buffer-lite":2,"./buffer-shortage":3,buffer:21,ieee754:25,"int64-buffer":26}],16:[function(t,r,e){function n(t){var r=s.getReadFormat(t);return t&&t.useraw?i(r):o(r)}function o(t){var r,e=new Array(256);for(r=0;127>=r;r++)e[r]=f(r);for(r=128;143>=r;r++)e[r]=a(r-128,t.map);for(r=144;159>=r;r++)e[r]=a(r-144,t.array);for(r=160;191>=r;r++)e[r]=a(r-160,t.str);for(e[192]=f(null),e[193]=null,e[194]=f(!1),e[195]=f(!0),e[196]=u(t.uint8,t.bin),e[197]=u(t.uint16,t.bin),e[198]=u(t.uint32,t.bin),e[199]=u(t.uint8,t.ext),e[200]=u(t.uint16,t.ext),e[201]=u(t.uint32,t.ext),e[202]=t.float32,e[203]=t.float64,e[204]=t.uint8,e[205]=t.uint16,e[206]=t.uint32,e[207]=t.uint64,e[208]=t.int8,e[209]=t.int16,e[210]=t.int32,e[211]=t.int64,e[212]=a(1,t.ext),e[213]=a(2,t.ext),e[214]=a(4,t.ext),e[215]=a(8,t.ext),e[216]=a(16,t.ext),e[217]=u(t.uint8,t.str),e[218]=u(t.uint16,t.str),e[219]=u(t.uint32,t.str),e[220]=u(t.uint16,t.array),e[221]=u(t.uint32,t.array),e[222]=u(t.uint16,t.map),e[223]=u(t.uint32,t.map),r=224;255>=r;r++)e[r]=f(r-256);return e}function i(t){var r,e=n(t).slice();for(e[217]=e[196],e[218]=e[197],e[219]=e[198],r=160;191>=r;r++)e[r]=a(r-160,t.bin);return e}function f(t){return function(){return t}}function u(t,r){return function(e){var n=t(e);return r(e,n)}}function a(t,r){return function(e){return r(e,t)}}var s=t("./read-format");e.getReadToken=n},{"./read-format":15}],17:[function(t,r,e){function n(t){function r(t,r){var n=e[typeof r];if(!n)throw new Error('Unsupported type "'+typeof r+'": '+r);n(t,r)}var e=o.getWriteType(t);return r}e.getEncoder=n;var o=t("./write-type")},{"./write-type":19}],18:[function(t,r,e){(function(r){function n(t){return l||t&&t.safe?i():o()}function o(){var t=h.slice();return t[196]=f(196),t[197]=u(197),t[198]=a(198),t[199]=f(199),t[200]=u(200),t[201]=a(201),t[202]=s(202,4,r.prototype.writeFloatBE,!0),t[203]=s(203,8,r.prototype.writeDoubleBE,!0),t[204]=f(204),t[205]=u(205),t[206]=a(206),t[207]=s(207,8,c.writeUint64BE),t[208]=f(208),t[209]=u(209),t[210]=a(210),t[211]=s(211,8,c.writeUint64BE),t[217]=f(217),t[218]=u(218),t[219]=a(219),t[220]=u(220),t[221]=a(221),t[222]=u(222),t[223]=a(223),t}function i(){var t=h.slice();return t[196]=s(196,1,r.prototype.writeUInt8),t[197]=s(197,2,r.prototype.writeUInt16BE),t[198]=s(198,4,r.prototype.writeUInt32BE),t[199]=s(199,1,r.prototype.writeUInt8),t[200]=s(200,2,r.prototype.writeUInt16BE),t[201]=s(201,4,r.prototype.writeUInt32BE),t[202]=s(202,4,r.prototype.writeFloatBE),t[203]=s(203,8,r.prototype.writeDoubleBE),t[204]=s(204,1,r.prototype.writeUInt8),t[205]=s(205,2,r.prototype.writeUInt16BE),t[206]=s(206,4,r.prototype.writeUInt32BE),t[207]=s(207,8,c.writeUint64BE),t[208]=s(208,1,r.prototype.writeInt8),t[209]=s(209,2,r.prototype.writeInt16BE),t[210]=s(210,4,r.prototype.writeInt32BE),t[211]=s(211,8,c.writeUint64BE),t[217]=s(217,1,r.prototype.writeUInt8),t[218]=s(218,2,r.prototype.writeUInt16BE),t[219]=s(219,4,r.prototype.writeUInt32BE),t[220]=s(220,2,r.prototype.writeUInt16BE),t[221]=s(221,4,r.prototype.writeUInt32BE),t[222]=s(222,2,r.prototype.writeUInt16BE),t[223]=s(223,4,r.prototype.writeUInt32BE),t}function f(t){return function(r,e){r.reserve(2);var n=r.buffer,o=r.offset;n[o++]=t,n[o++]=e,r.offset=o}}function u(t){return function(r,e){r.reserve(3);var n=r.buffer,o=r.offset;n[o++]=t,n[o++]=e>>>8,n[o++]=e,r.offset=o}}function a(t){return function(r,e){r.reserve(5);var n=r.buffer,o=r.offset;n[o++]=t,n[o++]=e>>>24,n[o++]=e>>>16,n[o++]=e>>>8,n[o++]=e,r.offset=o}}function s(t,r,e,n){return function(o,i){o.reserve(r+1),o.buffer[o.offset++]=t,e.call(o.buffer,i,o.offset,n),o.offset+=r}}var c=t("./buffer-lite"),h=t("./write-uint8").uint8,p="TYPED_ARRAY_SUPPORT"in r,l=p&&!r.TYPED_ARRAY_SUPPORT;e.getWriteToken=n}).call(this,t("buffer").Buffer)},{"./buffer-lite":2,"./write-uint8":20,buffer:21}],19:[function(t,r,e){(function(r){function n(t){function e(t,r){var e=r?195:194;m[e](t,r)}function n(t,r){var e,n=0|r;return r!==n?(e=203,void m[e](t,r)):(e=n>=-32&&127>=n?255&n:n>=0?255>=n?204:65535>=n?205:206:n>=-128?208:n>=-32768?209:210,void m[e](t,n))}function f(t,r){var e=207;m[e](t,r.toArray())}function l(t,r){var e=211;m[e](t,r.toArray())}function y(t,r){var e=r.length,n=5+3*e;t.reserve(n);var i=32>e?1:255>=e?2:65535>=e?3:5,f=t.offset+i;e=s.writeString.call(t.buffer,r,f);var u=32>e?1:255>=e?2:65535>=e?3:5;i!==u&&o(t,f,e,u-i);var a=1===u?160+e:3>=u?215+u:219;m[a](t,e),t.offset+=e}function g(t,e){if(null===e)return v(t,e);if(r.isBuffer(e))return E(t,e);if(i(e))return w(t,e);if(u.isUint64BE(e))return f(t,e);if(a.isInt64BE(e))return l(t,e);var n=t.codec.getExtPacker(e);return n&&(e=n(e)),e instanceof p?b(t,e):void A(t,e)}function v(t,r){var e=192;m[e](t,r)}function w(t,r){var e=r.length,n=16>e?144+e:65535>=e?220:221;m[n](t,e);for(var o=t.codec.encode,i=0;e>i;i++)o(t,r[i])}function E(t,r){var e=r.length,n=255>e?196:65535>=e?197:198;m[n](t,e),t.send(r)}function b(t,r){var e=r.buffer,n=e.length,o=d[n]||(255>n?199:65535>=n?200:201);m[o](t,n),h[r.type](t),t.send(e)}function A(t,r){var e=Object.keys(r),n=e.length,o=16>n?128+n:65535>=n?222:223;m[o](t,n);var i=t.codec.encode;e.forEach(function(e){i(t,e),i(t,r[e])})}function B(t,r){var e=r.length,n=5+3*e;t.reserve(n);var i=32>e?1:65535>=e?3:5,f=t.offset+i;e=s.writeString.call(t.buffer,r,f);var u=32>e?1:65535>=e?3:5;i!==u&&o(t,f,e,u-i);var a=32>e?160+e:65535>=e?218:219;m[a](t,e),t.offset+=e}function U(t,e){if(!r.isBuffer(e))return g(t,e);var n=e.length,o=32>n?160+n:65535>=n?218:219;m[o](t,n),t.send(e)}var m=c.getWriteToken(t),x={"boolean":e,"function":v,number:n,object:g,string:y,symbol:v,undefined:v};return t&&t.useraw&&(x.object=U,x.string=B),x}function o(t,r,e,n){var o=r+n,i=r+e;l?s.copy.call(t.buffer,t.buffer,o,r,i):t.buffer.copy(t.buffer,o,r,i)}var i=t("isarray"),f=t("int64-buffer"),u=f.Uint64BE,a=f.Int64BE,s=t("./buffer-lite"),c=t("./write-token"),h=t("./write-uint8").uint8,p=t("./ext-buffer").ExtBuffer,l="TYPED_ARRAY_SUPPORT"in r,d=[];d[1]=212,d[2]=213,d[4]=214,d[8]=215,d[16]=216,e.getWriteType=n}).call(this,t("buffer").Buffer)},{"./buffer-lite":2,"./ext-buffer":11,"./write-token":18,"./write-uint8":20,buffer:21,"int64-buffer":26,isarray:27}],20:[function(t,r,e){function n(t){return function(r){r.reserve(1),r.buffer[r.offset++]=t}}for(var o=e.uint8=new Array(256),i=0;255>=i;i++)o[i]=n(i)},{}],21:[function(t,r,e){(function(r){"use strict";function n(){try{var t=new Uint8Array(1);return t.foo=function(){return 42},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(r){return!1}}function o(){return f.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function i(t,r){if(o()<r)throw new RangeError("Invalid typed array length");return f.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(r),t.__proto__=f.prototype):(null===t&&(t=new f(r)),t.length=r),t}function f(t,r,e){if(!(f.TYPED_ARRAY_SUPPORT||this instanceof f))return new f(t,r,e);if("number"==typeof t){if("string"==typeof r)throw new Error("If encoding is specified then the first argument must be a string");return c(this,t)}return u(this,t,r,e)}function u(t,r,e,n){if("number"==typeof r)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&r instanceof ArrayBuffer?l(t,r,e,n):"string"==typeof r?h(t,r,e):d(t,r)}function a(t){if("number"!=typeof t)throw new TypeError('"size" argument must be a number')}function s(t,r,e,n){return a(r),0>=r?i(t,r):void 0!==e?"string"==typeof n?i(t,r).fill(e,n):i(t,r).fill(e):i(t,r)}function c(t,r){if(a(r),t=i(t,0>r?0:0|y(r)),!f.TYPED_ARRAY_SUPPORT)for(var e=0;r>e;e++)t[e]=0;return t}function h(t,r,e){if("string"==typeof e&&""!==e||(e="utf8"),!f.isEncoding(e))throw new TypeError('"encoding" must be a valid string encoding');var n=0|v(r,e);return t=i(t,n),t.write(r,e),t}function p(t,r){var e=0|y(r.length);t=i(t,e);for(var n=0;e>n;n+=1)t[n]=255&r[n];return t}function l(t,r,e,n){if(r.byteLength,0>e||r.byteLength<e)throw new RangeError("'offset' is out of bounds");if(r.byteLength<e+(n||0))throw new RangeError("'length' is out of bounds");return r=void 0===n?new Uint8Array(r,e):new Uint8Array(r,e,n),f.TYPED_ARRAY_SUPPORT?(t=r,t.__proto__=f.prototype):t=p(t,r),t}function d(t,r){if(f.isBuffer(r)){var e=0|y(r.length);return t=i(t,e),0===t.length?t:(r.copy(t,0,0,e),t)}if(r){if("undefined"!=typeof ArrayBuffer&&r.buffer instanceof ArrayBuffer||"length"in r)return"number"!=typeof r.length||G(r.length)?i(t,0):p(t,r);if("Buffer"===r.type&&Q(r.data))return p(t,r.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function y(t){if(t>=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|t}function g(t){return+t!=t&&(t=0),f.alloc(+t)}function v(t,r){if(f.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var e=t.length;if(0===e)return 0;for(var n=!1;;)switch(r){case"ascii":case"binary":case"raw":case"raws":return e;case"utf8":case"utf-8":case void 0:return V(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return X(t).length;default:if(n)return V(t).length;r=(""+r).toLowerCase(),n=!0}}function w(t,r,e){var n=!1;if((void 0===r||0>r)&&(r=0),r>this.length)return"";if((void 0===e||e>this.length)&&(e=this.length),0>=e)return"";if(e>>>=0,r>>>=0,r>=e)return"";for(t||(t="utf8");;)switch(t){case"hex":return S(this,r,e);case"utf8":case"utf-8":return _(this,r,e);case"ascii":return I(this,r,e);case"binary":return T(this,r,e);case"base64":return R(this,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Y(this,r,e);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function E(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function b(t,r,e,n){function o(t,r){return 1===i?t[r]:t.readUInt16BE(r*i)}var i=1,f=t.length,u=r.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return-1;i=2,f/=2,u/=2,e/=2}for(var a=-1,s=0;f>e+s;s++)if(o(t,e+s)===o(r,-1===a?0:s-a)){if(-1===a&&(a=s),s-a+1===u)return(e+a)*i}else-1!==a&&(s-=s-a),a=-1;return-1}function A(t,r,e,n){e=Number(e)||0;var o=t.length-e;n?(n=Number(n),n>o&&(n=o)):n=o;var i=r.length;if(i%2!==0)throw new Error("Invalid hex string");n>i/2&&(n=i/2);for(var f=0;n>f;f++){var u=parseInt(r.substr(2*f,2),16);if(isNaN(u))return f;t[e+f]=u}return f}function B(t,r,e,n){return Z(V(r,t.length-e),t,e,n)}function U(t,r,e,n){return Z(W(r),t,e,n)}function m(t,r,e,n){return U(t,r,e,n)}function x(t,r,e,n){return Z(X(r),t,e,n)}function P(t,r,e,n){return Z(J(r,t.length-e),t,e,n)}function R(t,r,e){return 0===r&&e===t.length?H.fromByteArray(t):H.fromByteArray(t.slice(r,e))}function _(t,r,e){e=Math.min(t.length,e);for(var n=[],o=r;e>o;){var i=t[o],f=null,u=i>239?4:i>223?3:i>191?2:1;if(e>=o+u){var a,s,c,h;switch(u){case 1:128>i&&(f=i);break;case 2:a=t[o+1],128===(192&a)&&(h=(31&i)<<6|63&a,h>127&&(f=h));break;case 3:a=t[o+1],s=t[o+2],128===(192&a)&&128===(192&s)&&(h=(15&i)<<12|(63&a)<<6|63&s,h>2047&&(55296>h||h>57343)&&(f=h));break;case 4:a=t[o+1],s=t[o+2],c=t[o+3],128===(192&a)&&128===(192&s)&&128===(192&c)&&(h=(15&i)<<18|(63&a)<<12|(63&s)<<6|63&c,h>65535&&1114112>h&&(f=h))}}null===f?(f=65533,u=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),o+=u}return k(n)}function k(t){var r=t.length;if($>=r)return String.fromCharCode.apply(String,t);for(var e="",n=0;r>n;)e+=String.fromCharCode.apply(String,t.slice(n,n+=$));return e}function I(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;e>o;o++)n+=String.fromCharCode(127&t[o]);return n}function T(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;e>o;o++)n+=String.fromCharCode(t[o]);return n}function S(t,r,e){var n=t.length;(!r||0>r)&&(r=0),(!e||0>e||e>n)&&(e=n);for(var o="",i=r;e>i;i++)o+=q(t[i]);return o}function Y(t,r,e){for(var n=t.slice(r,e),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}function D(t,r,e){if(t%1!==0||0>t)throw new RangeError("offset is not uint");if(t+r>e)throw new RangeError("Trying to access beyond buffer length")}function C(t,r,e,n,o,i){if(!f.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>o||i>r)throw new RangeError('"value" argument is out of bounds');if(e+n>t.length)throw new RangeError("Index out of range")}function O(t,r,e,n){0>r&&(r=65535+r+1);for(var o=0,i=Math.min(t.length-e,2);i>o;o++)t[e+o]=(r&255<<8*(n?o:1-o))>>>8*(n?o:1-o)}function L(t,r,e,n){0>r&&(r=4294967295+r+1);for(var o=0,i=Math.min(t.length-e,4);i>o;o++)t[e+o]=r>>>8*(n?o:3-o)&255}function M(t,r,e,n,o,i){if(e+n>t.length)throw new RangeError("Index out of range");if(0>e)throw new RangeError("Index out of range")}function N(t,r,e,n,o){return o||M(t,r,e,4,3.4028234663852886e38,-3.4028234663852886e38),K.write(t,r,e,n,23,4),e+4}function j(t,r,e,n,o){return o||M(t,r,e,8,1.7976931348623157e308,-1.7976931348623157e308),K.write(t,r,e,n,52,8),e+8}function F(t){if(t=z(t).replace(tt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function z(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function q(t){return 16>t?"0"+t.toString(16):t.toString(16)}function V(t,r){r=r||1/0;for(var e,n=t.length,o=null,i=[],f=0;n>f;f++){if(e=t.charCodeAt(f),e>55295&&57344>e){if(!o){if(e>56319){(r-=3)>-1&&i.push(239,191,189);continue}if(f+1===n){(r-=3)>-1&&i.push(239,191,189);continue}o=e;continue}if(56320>e){(r-=3)>-1&&i.push(239,191,189),o=e;continue}e=(o-55296<<10|e-56320)+65536}else o&&(r-=3)>-1&&i.push(239,191,189);if(o=null,128>e){if((r-=1)<0)break;i.push(e)}else if(2048>e){if((r-=2)<0)break;i.push(e>>6|192,63&e|128)}else if(65536>e){if((r-=3)<0)break;i.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(1114112>e))throw new Error("Invalid code point");if((r-=4)<0)break;i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return i}function W(t){for(var r=[],e=0;e<t.length;e++)r.push(255&t.charCodeAt(e));return r}function J(t,r){for(var e,n,o,i=[],f=0;f<t.length&&!((r-=2)<0);f++)e=t.charCodeAt(f),n=e>>8,o=e%256,i.push(o),i.push(n);return i}function X(t){return H.toByteArray(F(t))}function Z(t,r,e,n){for(var o=0;n>o&&!(o+e>=r.length||o>=t.length);o++)r[o+e]=t[o];return o}function G(t){return t!==t}var H=t("base64-js"),K=t("ieee754"),Q=t("isarray");e.Buffer=f,e.SlowBuffer=g,e.INSPECT_MAX_BYTES=50,f.TYPED_ARRAY_SUPPORT=void 0!==r.TYPED_ARRAY_SUPPORT?r.TYPED_ARRAY_SUPPORT:n(),e.kMaxLength=o(),f.poolSize=8192,f._augment=function(t){return t.__proto__=f.prototype,t},f.from=function(t,r,e){return u(null,t,r,e)},f.TYPED_ARRAY_SUPPORT&&(f.prototype.__proto__=Uint8Array.prototype,f.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&f[Symbol.species]===f&&Object.defineProperty(f,Symbol.species,{value:null,configurable:!0})),f.alloc=function(t,r,e){return s(null,t,r,e)},f.allocUnsafe=function(t){return c(null,t)},f.allocUnsafeSlow=function(t){return c(null,t)},f.isBuffer=function(t){return!(null==t||!t._isBuffer)},f.compare=function(t,r){if(!f.isBuffer(t)||!f.isBuffer(r))throw new TypeError("Arguments must be Buffers");if(t===r)return 0;for(var e=t.length,n=r.length,o=0,i=Math.min(e,n);i>o;++o)if(t[o]!==r[o]){e=t[o],n=r[o];break}return n>e?-1:e>n?1:0},f.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(t,r){if(!Q(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return f.alloc(0);var e;if(void 0===r)for(r=0,e=0;e<t.length;e++)r+=t[e].length;var n=f.allocUnsafe(r),o=0;for(e=0;e<t.length;e++){var i=t[e];if(!f.isBuffer(i))throw new TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},f.byteLength=v,f.prototype._isBuffer=!0,f.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;t>r;r+=2)E(this,r,r+1);return this},f.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;t>r;r+=4)E(this,r,r+3),E(this,r+1,r+2);return this},f.prototype.toString=function(){var t=0|this.length;return 0===t?"":0===arguments.length?_(this,0,t):w.apply(this,arguments)},f.prototype.equals=function(t){if(!f.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:0===f.compare(this,t)},f.prototype.inspect=function(){var t="",r=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),"<Buffer "+t+">"},f.prototype.compare=function(t,r,e,n,o){if(!f.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===r&&(r=0),void 0===e&&(e=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),0>r||e>t.length||0>n||o>this.length)throw new RangeError("out of range index");if(n>=o&&r>=e)return 0;if(n>=o)return-1;if(r>=e)return 1;if(r>>>=0,e>>>=0,n>>>=0,o>>>=0,this===t)return 0;for(var i=o-n,u=e-r,a=Math.min(i,u),s=this.slice(n,o),c=t.slice(r,e),h=0;a>h;++h)if(s[h]!==c[h]){i=s[h],u=c[h];break}return u>i?-1:i>u?1:0},f.prototype.indexOf=function(t,r,e){if("string"==typeof r?(e=r,r=0):r>2147483647?r=2147483647:-2147483648>r&&(r=-2147483648),r>>=0,0===this.length)return-1;if(r>=this.length)return-1;if(0>r&&(r=Math.max(this.length+r,0)),"string"==typeof t&&(t=f.from(t,e)),f.isBuffer(t))return 0===t.length?-1:b(this,t,r,e);if("number"==typeof t)return f.TYPED_ARRAY_SUPPORT&&"function"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,t,r):b(this,[t],r,e);throw new TypeError("val must be string, number or Buffer")},f.prototype.includes=function(t,r,e){return-1!==this.indexOf(t,r,e)},f.prototype.write=function(t,r,e,n){if(void 0===r)n="utf8",e=this.length,r=0;else if(void 0===e&&"string"==typeof r)n=r,e=this.length,r=0;else{if(!isFinite(r))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");r=0|r,isFinite(e)?(e=0|e,void 0===n&&(n="utf8")):(n=e,e=void 0)}var o=this.length-r;if((void 0===e||e>o)&&(e=o),t.length>0&&(0>e||0>r)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return A(this,t,r,e);case"utf8":case"utf-8":return B(this,t,r,e);case"ascii":return U(this,t,r,e);case"binary":return m(this,t,r,e);case"base64":return x(this,t,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,r,e);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var $=4096;f.prototype.slice=function(t,r){var e=this.length;t=~~t,r=void 0===r?e:~~r,0>t?(t+=e,0>t&&(t=0)):t>e&&(t=e),0>r?(r+=e,0>r&&(r=0)):r>e&&(r=e),t>r&&(r=t);var n;if(f.TYPED_ARRAY_SUPPORT)n=this.subarray(t,r),n.__proto__=f.prototype;else{var o=r-t;n=new f(o,void 0);for(var i=0;o>i;i++)n[i]=this[i+t]}return n},f.prototype.readUIntLE=function(t,r,e){t=0|t,r=0|r,e||D(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n},f.prototype.readUIntBE=function(t,r,e){t=0|t,r=0|r,e||D(t,r,this.length);for(var n=this[t+--r],o=1;r>0&&(o*=256);)n+=this[t+--r]*o;return n},f.prototype.readUInt8=function(t,r){return r||D(t,1,this.length),this[t]},f.prototype.readUInt16LE=function(t,r){return r||D(t,2,this.length),this[t]|this[t+1]<<8},f.prototype.readUInt16BE=function(t,r){return r||D(t,2,this.length),this[t]<<8|this[t+1]},f.prototype.readUInt32LE=function(t,r){return r||D(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},f.prototype.readUInt32BE=function(t,r){return r||D(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},f.prototype.readIntLE=function(t,r,e){t=0|t,r=0|r,e||D(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return o*=128,n>=o&&(n-=Math.pow(2,8*r)),
2
- n},f.prototype.readIntBE=function(t,r,e){t=0|t,r=0|r,e||D(t,r,this.length);for(var n=r,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*r)),i},f.prototype.readInt8=function(t,r){return r||D(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},f.prototype.readInt16LE=function(t,r){r||D(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?4294901760|e:e},f.prototype.readInt16BE=function(t,r){r||D(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?4294901760|e:e},f.prototype.readInt32LE=function(t,r){return r||D(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},f.prototype.readInt32BE=function(t,r){return r||D(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},f.prototype.readFloatLE=function(t,r){return r||D(t,4,this.length),K.read(this,t,!0,23,4)},f.prototype.readFloatBE=function(t,r){return r||D(t,4,this.length),K.read(this,t,!1,23,4)},f.prototype.readDoubleLE=function(t,r){return r||D(t,8,this.length),K.read(this,t,!0,52,8)},f.prototype.readDoubleBE=function(t,r){return r||D(t,8,this.length),K.read(this,t,!1,52,8)},f.prototype.writeUIntLE=function(t,r,e,n){if(t=+t,r=0|r,e=0|e,!n){var o=Math.pow(2,8*e)-1;C(this,t,r,e,o,0)}var i=1,f=0;for(this[r]=255&t;++f<e&&(i*=256);)this[r+f]=t/i&255;return r+e},f.prototype.writeUIntBE=function(t,r,e,n){if(t=+t,r=0|r,e=0|e,!n){var o=Math.pow(2,8*e)-1;C(this,t,r,e,o,0)}var i=e-1,f=1;for(this[r+i]=255&t;--i>=0&&(f*=256);)this[r+i]=t/f&255;return r+e},f.prototype.writeUInt8=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,1,255,0),f.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[r]=255&t,r+1},f.prototype.writeUInt16LE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):O(this,t,r,!0),r+2},f.prototype.writeUInt16BE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):O(this,t,r,!1),r+2},f.prototype.writeUInt32LE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=255&t):L(this,t,r,!0),r+4},f.prototype.writeUInt32BE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t):L(this,t,r,!1),r+4},f.prototype.writeIntLE=function(t,r,e,n){if(t=+t,r=0|r,!n){var o=Math.pow(2,8*e-1);C(this,t,r,e,o-1,-o)}var i=0,f=1,u=0;for(this[r]=255&t;++i<e&&(f*=256);)0>t&&0===u&&0!==this[r+i-1]&&(u=1),this[r+i]=(t/f>>0)-u&255;return r+e},f.prototype.writeIntBE=function(t,r,e,n){if(t=+t,r=0|r,!n){var o=Math.pow(2,8*e-1);C(this,t,r,e,o-1,-o)}var i=e-1,f=1,u=0;for(this[r+i]=255&t;--i>=0&&(f*=256);)0>t&&0===u&&0!==this[r+i+1]&&(u=1),this[r+i]=(t/f>>0)-u&255;return r+e},f.prototype.writeInt8=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,1,127,-128),f.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),0>t&&(t=255+t+1),this[r]=255&t,r+1},f.prototype.writeInt16LE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):O(this,t,r,!0),r+2},f.prototype.writeInt16BE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):O(this,t,r,!1),r+2},f.prototype.writeInt32LE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,4,2147483647,-2147483648),f.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24):L(this,t,r,!0),r+4},f.prototype.writeInt32BE=function(t,r,e){return t=+t,r=0|r,e||C(this,t,r,4,2147483647,-2147483648),0>t&&(t=4294967295+t+1),f.TYPED_ARRAY_SUPPORT?(this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t):L(this,t,r,!1),r+4},f.prototype.writeFloatLE=function(t,r,e){return N(this,t,r,!0,e)},f.prototype.writeFloatBE=function(t,r,e){return N(this,t,r,!1,e)},f.prototype.writeDoubleLE=function(t,r,e){return j(this,t,r,!0,e)},f.prototype.writeDoubleBE=function(t,r,e){return j(this,t,r,!1,e)},f.prototype.copy=function(t,r,e,n){if(e||(e=0),n||0===n||(n=this.length),r>=t.length&&(r=t.length),r||(r=0),n>0&&e>n&&(n=e),n===e)return 0;if(0===t.length||0===this.length)return 0;if(0>r)throw new RangeError("targetStart out of bounds");if(0>e||e>=this.length)throw new RangeError("sourceStart out of bounds");if(0>n)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-r<n-e&&(n=t.length-r+e);var o,i=n-e;if(this===t&&r>e&&n>r)for(o=i-1;o>=0;o--)t[o+r]=this[o+e];else if(1e3>i||!f.TYPED_ARRAY_SUPPORT)for(o=0;i>o;o++)t[o+r]=this[o+e];else Uint8Array.prototype.set.call(t,this.subarray(e,e+i),r);return i},f.prototype.fill=function(t,r,e,n){if("string"==typeof t){if("string"==typeof r?(n=r,r=0,e=this.length):"string"==typeof e&&(n=e,e=this.length),1===t.length){var o=t.charCodeAt(0);256>o&&(t=o)}if(void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!f.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"==typeof t&&(t=255&t);if(0>r||this.length<r||this.length<e)throw new RangeError("Out of range index");if(r>=e)return this;r>>>=0,e=void 0===e?this.length:e>>>0,t||(t=0);var i;if("number"==typeof t)for(i=r;e>i;i++)this[i]=t;else{var u=f.isBuffer(t)?t:V(new f(t,n).toString()),a=u.length;for(i=0;e-r>i;i++)this[i+r]=u[i%a]}return this};var tt=/[^+\/0-9A-Za-z-_]/g}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":22,ieee754:25,isarray:23}],22:[function(t,r,e){"use strict";function n(){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=0,e=t.length;e>r;++r)a[r]=t[r],s[t.charCodeAt(r)]=r;s["-".charCodeAt(0)]=62,s["_".charCodeAt(0)]=63}function o(t){var r,e,n,o,i,f,u=t.length;if(u%4>0)throw new Error("Invalid string. Length must be a multiple of 4");i="="===t[u-2]?2:"="===t[u-1]?1:0,f=new c(3*u/4-i),n=i>0?u-4:u;var a=0;for(r=0,e=0;n>r;r+=4,e+=3)o=s[t.charCodeAt(r)]<<18|s[t.charCodeAt(r+1)]<<12|s[t.charCodeAt(r+2)]<<6|s[t.charCodeAt(r+3)],f[a++]=o>>16&255,f[a++]=o>>8&255,f[a++]=255&o;return 2===i?(o=s[t.charCodeAt(r)]<<2|s[t.charCodeAt(r+1)]>>4,f[a++]=255&o):1===i&&(o=s[t.charCodeAt(r)]<<10|s[t.charCodeAt(r+1)]<<4|s[t.charCodeAt(r+2)]>>2,f[a++]=o>>8&255,f[a++]=255&o),f}function i(t){return a[t>>18&63]+a[t>>12&63]+a[t>>6&63]+a[63&t]}function f(t,r,e){for(var n,o=[],f=r;e>f;f+=3)n=(t[f]<<16)+(t[f+1]<<8)+t[f+2],o.push(i(n));return o.join("")}function u(t){for(var r,e=t.length,n=e%3,o="",i=[],u=16383,s=0,c=e-n;c>s;s+=u)i.push(f(t,s,s+u>c?c:s+u));return 1===n?(r=t[e-1],o+=a[r>>2],o+=a[r<<4&63],o+="=="):2===n&&(r=(t[e-2]<<8)+t[e-1],o+=a[r>>10],o+=a[r>>4&63],o+=a[r<<2&63],o+="="),i.push(o),i.join("")}e.toByteArray=o,e.fromByteArray=u;var a=[],s=[],c="undefined"!=typeof Uint8Array?Uint8Array:Array;n()},{}],23:[function(t,r,e){var n={}.toString;r.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},{}],24:[function(t,r,e){function n(){return this instanceof n?void 0:new n}!function(t){function e(t){for(var r in s)t[r]=s[r];return t}function n(t,r){return u(this,t).push(r),this}function o(t,r){function e(){i.call(n,t,e),r.apply(this,arguments)}var n=this;return e.originalListener=r,u(n,t).push(e),n}function i(t,r){function e(t){return t!==r&&t.originalListener!==r}var n,o=this;if(arguments.length){if(r){if(n=u(o,t,!0)){if(n=n.filter(e),!n.length)return i.call(o,t);o[a][t]=n}}else if(n=o[a],n&&(delete n[t],!Object.keys(n).length))return i.call(o)}else delete o[a];return o}function f(t,r){function e(t){t.call(i)}function n(t){t.call(i,r)}function o(t){t.apply(i,s)}var i=this,f=u(i,t,!0);if(!f)return!1;var a=arguments.length;if(1===a)f.forEach(e);else if(2===a)f.forEach(n);else{var s=Array.prototype.slice.call(arguments,1);f.forEach(o)}return!!f.length}function u(t,r,e){if(!e||t[a]){var n=t[a]||(t[a]={});return n[r]||(n[r]=[])}}"undefined"!=typeof r&&(r.exports=t);var a="listeners",s={on:n,once:o,off:i,emit:f};e(t.prototype),t.mixin=e}(n)},{}],25:[function(t,r,e){e.read=function(t,r,e,n,o){var i,f,u=8*o-n-1,a=(1<<u)-1,s=a>>1,c=-7,h=e?o-1:0,p=e?-1:1,l=t[r+h];for(h+=p,i=l&(1<<-c)-1,l>>=-c,c+=u;c>0;i=256*i+t[r+h],h+=p,c-=8);for(f=i&(1<<-c)-1,i>>=-c,c+=n;c>0;f=256*f+t[r+h],h+=p,c-=8);if(0===i)i=1-s;else{if(i===a)return f?NaN:(l?-1:1)*(1/0);f+=Math.pow(2,n),i-=s}return(l?-1:1)*f*Math.pow(2,i-n)},e.write=function(t,r,e,n,o,i){var f,u,a,s=8*i-o-1,c=(1<<s)-1,h=c>>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,l=n?0:i-1,d=n?1:-1,y=0>r||0===r&&0>1/r?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(u=isNaN(r)?1:0,f=c):(f=Math.floor(Math.log(r)/Math.LN2),r*(a=Math.pow(2,-f))<1&&(f--,a*=2),r+=f+h>=1?p/a:p*Math.pow(2,1-h),r*a>=2&&(f++,a/=2),f+h>=c?(u=0,f=c):f+h>=1?(u=(r*a-1)*Math.pow(2,o),f+=h):(u=r*Math.pow(2,h-1)*Math.pow(2,o),f=0));o>=8;t[e+l]=255&u,l+=d,u/=256,o-=8);for(f=f<<o|u,s+=o;s>0;t[e+l]=255&f,l+=d,f/=256,s-=8);t[e+l-d]|=128*y}},{}],26:[function(t,r,e){(function(t){var r,n;!function(e){function o(t,r,e,n,o){if(B&&U&&(r instanceof U&&(r=new B(r)),n instanceof U&&(n=new B(n))),!(r||e||n||y))return void(t.buffer=s(m,0));if(!i(r,e)){var a=y||Array;o=e,n=r,e=0,r=new a(8)}t.buffer=r,t.offset=e|=0,"undefined"!=typeof n&&("string"==typeof n?u(r,e,n,o||10):i(n,o)?f(r,e,n,o):"number"==typeof o?(h(r,e,n),h(r,e+4,o)):n>0?p(r,e,n):0>n?l(r,e,n):f(r,e,m,0))}function i(t,r){var e=t&&t.length;return r|=0,e&&e>=r+8&&"string"!=typeof t[r]}function f(t,r,e,n){r|=0,n|=0;for(var o=0;8>o;o++)t[r++]=255&e[n++]}function u(t,r,e,n){var o=0,i=e.length,f=0,u=0;"-"===e[0]&&o++;for(var a=o;i>o;){var s=parseInt(e[o++],n);if(!(s>=0))break;u=u*n+s,f=f*n+Math.floor(u/P),u%=P}a&&(f=~f,u?u=P-u:f++),h(t,r,f),h(t,r+4,u)}function a(t,r,e,n){var o="",i=c(t,r),f=c(t,r+4),u=n&&2147483648&i;for(u&&(i=~i,f=P-f),e=e||10;;){var a=i%e*P+f;if(i=Math.floor(i/e),f=Math.floor(a/e),o=(a%e).toString(e)+o,!i&&!f)break}return u&&(o="-"+o),o}function s(t,r){return Array.prototype.slice.call(t,r,r+8)}function c(t,r){return t[r++]*R+(t[r++]<<16)+(t[r++]<<8)+t[r]}function h(t,r,e){t[r+3]=255&e,e>>=8,t[r+2]=255&e,e>>=8,t[r+1]=255&e,e>>=8,t[r]=255&e}function p(t,r,e){for(var n=r+7;n>=r;n--)t[n]=255&e,e/=256}function l(t,r,e){e++;for(var n=r+7;n>=r;n--)t[n]=255&-e^255,e/=256}function d(t){return!!t&&"[object Array]"==Object.prototype.toString.call(t)}var y,g=e.Uint64BE=r=function(t,e,n,i){return this instanceof r?o(this,t,e,n,i):new r(t,e,n,i)},v=e.Int64BE=n=function(t,r,e,i){return this instanceof n?o(this,t,r,e,i):new n(t,r,e,i)},w=g.prototype,E=v.prototype,b="undefined",A=b!==typeof t&&t,B=b!==typeof Uint8Array&&Uint8Array,U=b!==typeof ArrayBuffer&&ArrayBuffer,m=[0,0,0,0,0,0,0,0],x=Array.isArray||d,P=4294967296,R=16777216;w.buffer=E.buffer=void 0,w.offset=E.offset=0,w._isUint64BE=E._isInt64BE=!0,g.isUint64BE=function(t){return!(!t||!t._isUint64BE)},v.isInt64BE=function(t){return!(!t||!t._isInt64BE)},w.toNumber=function(){var t=this.buffer,r=this.offset,e=c(t,r),n=c(t,r+4);return e?e*P+n:n},E.toNumber=function(){var t=this.buffer,r=this.offset,e=0|c(t,r),n=c(t,r+4);return e?e*P+n:n},w.toArray=E.toArray=function(t){var r=this.buffer,e=this.offset;return y=null,t!==!1&&0===e&&8===r.length&&x(r)?r:s(r,e)},A&&(w.toBuffer=E.toBuffer=function(r){var e=this.buffer,n=this.offset;if(y=A,r!==!1&&0===n&&8===e.length&&t.isBuffer(e))return e;var o=new A(8);return f(o,0,e,n),o}),B&&(w.toArrayBuffer=E.toArrayBuffer=function(t){var r=this.buffer,e=this.offset,n=r.buffer;if(y=B,t!==!1&&0===e&&n instanceof U&&8===n.byteLength)return n;var o=new B(8);return f(o,0,r,e),o.buffer}),E.toString=function(t){return a(this.buffer,this.offset,t,!0)},w.toString=function(t){return a(this.buffer,this.offset,t,!1)},w.toJSON=w.toNumber,E.toJSON=E.toNumber}("object"==typeof e&&"string"!=typeof e.nodeName?e:this||{})}).call(this,t("buffer").Buffer)},{buffer:21}],27:[function(t,r,e){arguments[4][23][0].apply(e,arguments)},{dup:23}]},{},[1])(1)});
1
+ !function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r;r="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,r.msgpack=t()}}(function(){return function t(r,e,n){function i(f,u){if(!e[f]){if(!r[f]){var a="function"==typeof require&&require;if(!u&&a)return a(f,!0);if(o)return o(f,!0);var s=new Error("Cannot find module '"+f+"'");throw s.code="MODULE_NOT_FOUND",s}var c=e[f]={exports:{}};r[f][0].call(c.exports,function(t){var e=r[f][1][t];return i(e?e:t)},c,c.exports,t,r,e,n)}return e[f].exports}for(var o="function"==typeof require&&require,f=0;f<n.length;f++)i(n[f]);return i}({1:[function(t,r,e){e.encode=t("./encode").encode,e.decode=t("./decode").decode,e.Encoder=t("./encoder").Encoder,e.Decoder=t("./decoder").Decoder,e.createCodec=t("./ext").createCodec,e.codec=t("./codec").codec},{"./codec":10,"./decode":12,"./decoder":13,"./encode":15,"./encoder":16,"./ext":20}],2:[function(t,r,e){(function(Buffer){function t(t){return t&&t.isBuffer&&t}r.exports=t("undefined"!=typeof Buffer&&Buffer)||t(this.Buffer)||t("undefined"!=typeof window&&window.Buffer)||this.Buffer}).call(this,t("buffer").Buffer)},{buffer:29}],3:[function(t,r,e){function n(t,r){for(var e=this,n=r||(r|=0),i=t.length,o=0,f=0;f<i;)o=t.charCodeAt(f++),o<128?e[n++]=o:o<2048?(e[n++]=192|o>>>6,e[n++]=128|63&o):o<55296||o>57343?(e[n++]=224|o>>>12,e[n++]=128|o>>>6&63,e[n++]=128|63&o):(o=(o-55296<<10|t.charCodeAt(f++)-56320)+65536,e[n++]=240|o>>>18,e[n++]=128|o>>>12&63,e[n++]=128|o>>>6&63,e[n++]=128|63&o);return n-r}function i(t,r,e){var n=this,i=0|r;e||(e=n.length);for(var o="",f=0;i<e;)f=n[i++],f<128?o+=String.fromCharCode(f):(192===(224&f)?f=(31&f)<<6|63&n[i++]:224===(240&f)?f=(15&f)<<12|(63&n[i++])<<6|63&n[i++]:240===(248&f)&&(f=(7&f)<<18|(63&n[i++])<<12|(63&n[i++])<<6|63&n[i++]),f>=65536?(f-=65536,o+=String.fromCharCode((f>>>10)+55296,(1023&f)+56320)):o+=String.fromCharCode(f));return o}function o(t,r,e,n){var i;e||(e=0),n||0===n||(n=this.length),r||(r=0);var o=n-e;if(t===this&&e<r&&r<n)for(i=o-1;i>=0;i--)t[i+r]=this[i+e];else for(i=0;i<o;i++)t[i+r]=this[i+e];return o}e.copy=o,e.toString=i,e.write=n},{}],4:[function(t,r,e){function n(t){return new Array(t)}function i(t){if(!o.isBuffer(t)&&o.isView(t))t=o.Uint8Array.from(t);else if(o.isArrayBuffer(t))t=new Uint8Array(t);else{if("string"==typeof t)return o.from.call(e,t);if("number"==typeof t)throw new TypeError('"value" argument must not be a number')}return Array.prototype.slice.call(t)}var o=t("./bufferish"),e=r.exports=n(0);e.alloc=n,e.concat=o.concat,e.from=i},{"./bufferish":8}],5:[function(t,r,e){function n(t){return new Buffer(t)}function i(t){if(!o.isBuffer(t)&&o.isView(t))t=o.Uint8Array.from(t);else if(o.isArrayBuffer(t))t=new Uint8Array(t);else{if("string"==typeof t)return o.from.call(e,t);if("number"==typeof t)throw new TypeError('"value" argument must not be a number')}return Buffer.from&&1!==Buffer.from.length?Buffer.from(t):new Buffer(t)}var o=t("./bufferish"),Buffer=o.global,e=r.exports=o.hasBuffer?n(0):[];e.alloc=o.hasBuffer&&Buffer.alloc||n,e.concat=o.concat,e.from=i},{"./bufferish":8}],6:[function(t,r,e){function n(t,r,e,n){var o=a.isBuffer(this),f=a.isBuffer(t);if(o&&f)return this.copy(t,r,e,n);if(c||o||f||!a.isView(this)||!a.isView(t))return u.copy.call(this,t,r,e,n);var s=e||null!=n?i.call(this,e,n):this;return t.set(s,r),s.length}function i(t,r){var e=this.slice||!c&&this.subarray;if(e)return e.call(this,t,r);var i=a.alloc.call(this,r-t);return n.call(this,i,0,t,r),i}function o(t,r,e){var n=!s&&a.isBuffer(this)?this.toString:u.toString;return n.apply(this,arguments)}function f(t){function r(){var r=this[t]||u[t];return r.apply(this,arguments)}return r}var u=t("./buffer-lite");e.copy=n,e.slice=i,e.toString=o,e.write=f("write");var a=t("./bufferish"),Buffer=a.global,s=a.hasBuffer&&"TYPED_ARRAY_SUPPORT"in Buffer,c=s&&!Buffer.TYPED_ARRAY_SUPPORT},{"./buffer-lite":3,"./bufferish":8}],7:[function(t,r,e){function n(t){return new Uint8Array(t)}function i(t){if(o.isView(t)){var r=t.byteOffset,n=t.byteLength;t=t.buffer,t.byteLength!==n&&(t.slice?t=t.slice(r,r+n):(t=new Uint8Array(t),t.byteLength!==n&&(t=Array.prototype.slice.call(t,r,r+n))))}else{if("string"==typeof t)return o.from.call(e,t);if("number"==typeof t)throw new TypeError('"value" argument must not be a number')}return new Uint8Array(t)}var o=t("./bufferish"),e=r.exports=o.hasArrayBuffer?n(0):[];e.alloc=n,e.concat=o.concat,e.from=i},{"./bufferish":8}],8:[function(t,r,e){function n(t){return"string"==typeof t?u.call(this,t):a(this).from(t)}function i(t){return a(this).alloc(t)}function o(t,r){function n(t){r+=t.length}function o(t){a+=w.copy.call(t,u,a)}r||(r=0,Array.prototype.forEach.call(t,n));var f=this!==e&&this||t[0],u=i.call(f,r),a=0;return Array.prototype.forEach.call(t,o),u}function f(t){return t instanceof ArrayBuffer||E(t)}function u(t){var r=3*t.length,e=i.call(this,r),n=w.write.call(e,t);return r!==n&&(e=w.slice.call(e,0,n)),e}function a(t){return d(t)?g:y(t)?b:p(t)?v:h?g:l?b:v}function s(){return!1}function c(t,r){return t="[object "+t+"]",function(e){return null!=e&&{}.toString.call(r?e[r]:e)===t}}var Buffer=e.global=t("./buffer-global"),h=e.hasBuffer=Buffer&&!!Buffer.isBuffer,l=e.hasArrayBuffer="undefined"!=typeof ArrayBuffer,p=e.isArray=t("isarray");e.isArrayBuffer=l?f:s;var d=e.isBuffer=h?Buffer.isBuffer:s,y=e.isView=l?ArrayBuffer.isView||c("ArrayBuffer","buffer"):s;e.alloc=i,e.concat=o,e.from=n;var v=e.Array=t("./bufferish-array"),g=e.Buffer=t("./bufferish-buffer"),b=e.Uint8Array=t("./bufferish-uint8array"),w=e.prototype=t("./bufferish-proto"),E=c("ArrayBuffer")},{"./buffer-global":2,"./bufferish-array":4,"./bufferish-buffer":5,"./bufferish-proto":6,"./bufferish-uint8array":7,isarray:34}],9:[function(t,r,e){function n(t){return this instanceof n?(this.options=t,void this.init()):new n(t)}function i(t){for(var r in t)n.prototype[r]=o(n.prototype[r],t[r])}function o(t,r){function e(){return t.apply(this,arguments),r.apply(this,arguments)}return t&&r?e:t||r}function f(t){function r(t,r){return r(t)}return t=t.slice(),function(e){return t.reduce(r,e)}}function u(t){return s(t)?f(t):t}function a(t){return new n(t)}var s=t("isarray");e.createCodec=a,e.install=i,e.filter=u;var c=t("./bufferish");n.prototype.init=function(){var t=this.options;return t&&t.uint8array&&(this.bufferish=c.Uint8Array),this},e.preset=a({preset:!0})},{"./bufferish":8,isarray:34}],10:[function(t,r,e){t("./read-core"),t("./write-core"),e.codec={preset:t("./codec-base").preset}},{"./codec-base":9,"./read-core":22,"./write-core":25}],11:[function(t,r,e){function n(t){if(!(this instanceof n))return new n(t);if(t&&(this.options=t,t.codec)){var r=this.codec=t.codec;r.bufferish&&(this.bufferish=r.bufferish)}}e.DecodeBuffer=n;var i=t("./read-core").preset,o=t("./flex-buffer").FlexDecoder;o.mixin(n.prototype),n.prototype.codec=i,n.prototype.fetch=function(){return this.codec.decode(this)}},{"./flex-buffer":21,"./read-core":22}],12:[function(t,r,e){function n(t,r){var e=new i(r);return e.write(t),e.read()}e.decode=n;var i=t("./decode-buffer").DecodeBuffer},{"./decode-buffer":11}],13:[function(t,r,e){function n(t){return this instanceof n?void o.call(this,t):new n(t)}e.Decoder=n;var i=t("event-lite"),o=t("./decode-buffer").DecodeBuffer;n.prototype=new o,i.mixin(n.prototype),n.prototype.decode=function(t){arguments.length&&this.write(t),this.flush()},n.prototype.push=function(t){this.emit("data",t)},n.prototype.end=function(t){this.decode(t),this.emit("end")}},{"./decode-buffer":11,"event-lite":31}],14:[function(t,r,e){function n(t){if(!(this instanceof n))return new n(t);if(t&&(this.options=t,t.codec)){var r=this.codec=t.codec;r.bufferish&&(this.bufferish=r.bufferish)}}e.EncodeBuffer=n;var i=t("./write-core").preset,o=t("./flex-buffer").FlexEncoder;o.mixin(n.prototype),n.prototype.codec=i,n.prototype.write=function(t){this.codec.encode(this,t)}},{"./flex-buffer":21,"./write-core":25}],15:[function(t,r,e){function n(t,r){var e=new i(r);return e.write(t),e.read()}e.encode=n;var i=t("./encode-buffer").EncodeBuffer},{"./encode-buffer":14}],16:[function(t,r,e){function n(t){return this instanceof n?void o.call(this,t):new n(t)}e.Encoder=n;var i=t("event-lite"),o=t("./encode-buffer").EncodeBuffer;n.prototype=new o,i.mixin(n.prototype),n.prototype.encode=function(t){this.write(t),this.emit("data",this.read())},n.prototype.end=function(t){arguments.length&&this.encode(t),this.flush(),this.emit("end")}},{"./encode-buffer":14,"event-lite":31}],17:[function(t,r,e){function n(t,r){return this instanceof n?(this.buffer=i.from(t),void(this.type=r)):new n(t,r)}e.ExtBuffer=n;var i=t("./bufferish")},{"./bufferish":8}],18:[function(t,r,e){function n(t){t.addExtPacker(14,Error,[u,i]),t.addExtPacker(1,EvalError,[u,i]),t.addExtPacker(2,RangeError,[u,i]),t.addExtPacker(3,ReferenceError,[u,i]),t.addExtPacker(4,SyntaxError,[u,i]),t.addExtPacker(5,TypeError,[u,i]),t.addExtPacker(6,URIError,[u,i]),t.addExtPacker(10,RegExp,[f,i]),t.addExtPacker(11,Boolean,[o,i]),t.addExtPacker(12,String,[o,i]),t.addExtPacker(13,Date,[Number,i]),t.addExtPacker(15,Number,[o,i]),"undefined"!=typeof Uint8Array&&(t.addExtPacker(17,Int8Array,c),t.addExtPacker(18,Uint8Array,c),t.addExtPacker(19,Int16Array,c),t.addExtPacker(20,Uint16Array,c),t.addExtPacker(21,Int32Array,c),t.addExtPacker(22,Uint32Array,c),t.addExtPacker(23,Float32Array,c),"undefined"!=typeof Float64Array&&t.addExtPacker(24,Float64Array,c),"undefined"!=typeof Uint8ClampedArray&&t.addExtPacker(25,Uint8ClampedArray,c),t.addExtPacker(26,ArrayBuffer,c),t.addExtPacker(29,DataView,c)),s.hasBuffer&&t.addExtPacker(27,Buffer,s.from)}function i(r){return a||(a=t("./encode").encode),a(r)}function o(t){return t.valueOf()}function f(t){t=RegExp.prototype.toString.call(t).split("/"),t.shift();var r=[t.pop()];return r.unshift(t.join("/")),r}function u(t){var r={};for(var e in h)r[e]=t[e];return r}e.setExtPackers=n;var a,s=t("./bufferish"),Buffer=s.global,c=s.Uint8Array.from,h={name:1,message:1,stack:1,columnNumber:1,fileName:1,lineNumber:1}},{"./bufferish":8,"./encode":15}],19:[function(t,r,e){function n(t){t.addExtUnpacker(14,[i,f(Error)]),t.addExtUnpacker(1,[i,f(EvalError)]),t.addExtUnpacker(2,[i,f(RangeError)]),t.addExtUnpacker(3,[i,f(ReferenceError)]),t.addExtUnpacker(4,[i,f(SyntaxError)]),t.addExtUnpacker(5,[i,f(TypeError)]),t.addExtUnpacker(6,[i,f(URIError)]),t.addExtUnpacker(10,[i,o]),t.addExtUnpacker(11,[i,u(Boolean)]),t.addExtUnpacker(12,[i,u(String)]),t.addExtUnpacker(13,[i,u(Date)]),t.addExtUnpacker(15,[i,u(Number)]),"undefined"!=typeof Uint8Array&&(t.addExtUnpacker(17,u(Int8Array)),t.addExtUnpacker(18,u(Uint8Array)),t.addExtUnpacker(19,[a,u(Int16Array)]),t.addExtUnpacker(20,[a,u(Uint16Array)]),t.addExtUnpacker(21,[a,u(Int32Array)]),t.addExtUnpacker(22,[a,u(Uint32Array)]),t.addExtUnpacker(23,[a,u(Float32Array)]),"undefined"!=typeof Float64Array&&t.addExtUnpacker(24,[a,u(Float64Array)]),"undefined"!=typeof Uint8ClampedArray&&t.addExtUnpacker(25,u(Uint8ClampedArray)),t.addExtUnpacker(26,a),t.addExtUnpacker(29,[a,u(DataView)])),c.hasBuffer&&t.addExtUnpacker(27,u(Buffer))}function i(r){return s||(s=t("./decode").decode),s(r)}function o(t){return RegExp.apply(null,t)}function f(t){return function(r){var e=new t;for(var n in h)e[n]=r[n];return e}}function u(t){return function(r){return new t(r)}}function a(t){return new Uint8Array(t).buffer}e.setExtUnpackers=n;var s,c=t("./bufferish"),Buffer=c.global,h={name:1,message:1,stack:1,columnNumber:1,fileName:1,lineNumber:1}},{"./bufferish":8,"./decode":12}],20:[function(t,r,e){t("./read-core"),t("./write-core"),e.createCodec=t("./codec-base").createCodec},{"./codec-base":9,"./read-core":22,"./write-core":25}],21:[function(t,r,e){function n(){if(!(this instanceof n))return new n}function i(){if(!(this instanceof i))return new i}function o(){function t(t){var r=this.offset?p.prototype.slice.call(this.buffer,this.offset):this.buffer;this.buffer=r?t?this.bufferish.concat([r,t]):r:t,this.offset=0}function r(){for(;this.offset<this.buffer.length;){var t,r=this.offset;try{t=this.fetch()}catch(t){if(t&&t.message!=v)throw t;this.offset=r;break}this.push(t)}}function e(t){var r=this.offset,e=r+t;if(e>this.buffer.length)throw new Error(v);return this.offset=e,r}return{bufferish:p,write:t,fetch:a,flush:r,push:c,pull:h,read:s,reserve:e,offset:0}}function f(){function t(){var t=this.start;if(t<this.offset){var r=this.start=this.offset;return p.prototype.slice.call(this.buffer,t,r)}}function r(){for(;this.start<this.offset;){var t=this.fetch();t&&this.push(t)}}function e(){var t=this.buffers||(this.buffers=[]),r=t.length>1?this.bufferish.concat(t):t[0];return t.length=0,r}function n(t){var r=0|t;if(this.buffer){var e=this.buffer.length,n=0|this.offset,i=n+r;if(i<e)return this.offset=i,n;this.flush(),t=Math.max(t,Math.min(2*e,this.maxBufferSize))}return t=Math.max(t,this.minBufferSize),this.buffer=this.bufferish.alloc(t),this.start=0,this.offset=r,0}function i(t){var r=t.length;if(r>this.minBufferSize)this.flush(),this.push(t);else{var e=this.reserve(r);p.prototype.copy.call(t,this.buffer,e)}}return{bufferish:p,write:u,fetch:t,flush:r,push:c,pull:e,read:s,reserve:n,send:i,maxBufferSize:y,minBufferSize:d,offset:0,start:0}}function u(){throw new Error("method not implemented: write()")}function a(){throw new Error("method not implemented: fetch()")}function s(){var t=this.buffers&&this.buffers.length;return t?(this.flush(),this.pull()):this.fetch()}function c(t){var r=this.buffers||(this.buffers=[]);r.push(t)}function h(){var t=this.buffers||(this.buffers=[]);return t.shift()}function l(t){function r(r){for(var e in t)r[e]=t[e];return r}return r}e.FlexDecoder=n,e.FlexEncoder=i;var p=t("./bufferish"),d=2048,y=65536,v="BUFFER_SHORTAGE";n.mixin=l(o()),n.mixin(n.prototype),i.mixin=l(f()),i.mixin(i.prototype)},{"./bufferish":8}],22:[function(t,r,e){function n(t){function r(t){var r=s(t),n=e[r];if(!n)throw new Error("Invalid type: "+(r?"0x"+r.toString(16):r));return n(t)}var e=c.getReadToken(t);return r}function i(){var t=this.options;return this.decode=n(t),t&&t.preset&&a.setExtUnpackers(this),this}function o(t,r){var e=this.extUnpackers||(this.extUnpackers=[]);e[t]=h.filter(r)}function f(t){function r(r){return new u(r,t)}var e=this.extUnpackers||(this.extUnpackers=[]);return e[t]||r}var u=t("./ext-buffer").ExtBuffer,a=t("./ext-unpacker"),s=t("./read-format").readUint8,c=t("./read-token"),h=t("./codec-base");h.install({addExtUnpacker:o,getExtUnpacker:f,init:i}),e.preset=i.call(h.preset)},{"./codec-base":9,"./ext-buffer":17,"./ext-unpacker":19,"./read-format":23,"./read-token":24}],23:[function(t,r,e){function n(t){var r=k.hasArrayBuffer&&t&&t.binarraybuffer,e=t&&t.int64,n=T&&t&&t.usemap,B={map:n?o:i,array:f,str:u,bin:r?s:a,ext:c,uint8:h,uint16:p,uint32:y,uint64:g(8,e?E:b),int8:l,int16:d,int32:v,int64:g(8,e?A:w),float32:g(4,m),float64:g(8,x)};return B}function i(t,r){var e,n={},i=new Array(r),o=new Array(r),f=t.codec.decode;for(e=0;e<r;e++)i[e]=f(t),o[e]=f(t);for(e=0;e<r;e++)n[i[e]]=o[e];return n}function o(t,r){var e,n=new Map,i=new Array(r),o=new Array(r),f=t.codec.decode;for(e=0;e<r;e++)i[e]=f(t),o[e]=f(t);for(e=0;e<r;e++)n.set(i[e],o[e]);return n}function f(t,r){for(var e=new Array(r),n=t.codec.decode,i=0;i<r;i++)e[i]=n(t);return e}function u(t,r){var e=t.reserve(r),n=e+r;return _.toString.call(t.buffer,"utf-8",e,n)}function a(t,r){var e=t.reserve(r),n=e+r,i=_.slice.call(t.buffer,e,n);return k.from(i)}function s(t,r){var e=t.reserve(r),n=e+r,i=_.slice.call(t.buffer,e,n);return k.Uint8Array.from(i).buffer}function c(t,r){var e=t.reserve(r+1),n=t.buffer[e++],i=e+r,o=t.codec.getExtUnpacker(n);if(!o)throw new Error("Invalid ext type: "+(n?"0x"+n.toString(16):n));var f=_.slice.call(t.buffer,e,i);return o(f)}function h(t){var r=t.reserve(1);return t.buffer[r]}function l(t){var r=t.reserve(1),e=t.buffer[r];return 128&e?e-256:e}function p(t){var r=t.reserve(2),e=t.buffer;return e[r++]<<8|e[r]}function d(t){var r=t.reserve(2),e=t.buffer,n=e[r++]<<8|e[r];return 32768&n?n-65536:n}function y(t){var r=t.reserve(4),e=t.buffer;return 16777216*e[r++]+(e[r++]<<16)+(e[r++]<<8)+e[r]}function v(t){var r=t.reserve(4),e=t.buffer;return e[r++]<<24|e[r++]<<16|e[r++]<<8|e[r]}function g(t,r){return function(e){var n=e.reserve(t);return r.call(e.buffer,n,S)}}function b(t){return new P(this,t).toNumber()}function w(t){return new R(this,t).toNumber()}function E(t){return new P(this,t)}function A(t){return new R(this,t)}function m(t){return B.read(this,t,!1,23,4)}function x(t){return B.read(this,t,!1,52,8)}var B=t("ieee754"),U=t("int64-buffer"),P=U.Uint64BE,R=U.Int64BE;e.getReadFormat=n,e.readUint8=h;var k=t("./bufferish"),_=t("./bufferish-proto"),T="undefined"!=typeof Map,S=!0},{"./bufferish":8,"./bufferish-proto":6,ieee754:32,"int64-buffer":33}],24:[function(t,r,e){function n(t){var r=s.getReadFormat(t);return t&&t.useraw?o(r):i(r)}function i(t){var r,e=new Array(256);for(r=0;r<=127;r++)e[r]=f(r);for(r=128;r<=143;r++)e[r]=a(r-128,t.map);for(r=144;r<=159;r++)e[r]=a(r-144,t.array);for(r=160;r<=191;r++)e[r]=a(r-160,t.str);for(e[192]=f(null),e[193]=null,e[194]=f(!1),e[195]=f(!0),e[196]=u(t.uint8,t.bin),e[197]=u(t.uint16,t.bin),e[198]=u(t.uint32,t.bin),e[199]=u(t.uint8,t.ext),e[200]=u(t.uint16,t.ext),e[201]=u(t.uint32,t.ext),e[202]=t.float32,e[203]=t.float64,e[204]=t.uint8,e[205]=t.uint16,e[206]=t.uint32,e[207]=t.uint64,e[208]=t.int8,e[209]=t.int16,e[210]=t.int32,e[211]=t.int64,e[212]=a(1,t.ext),e[213]=a(2,t.ext),e[214]=a(4,t.ext),e[215]=a(8,t.ext),e[216]=a(16,t.ext),e[217]=u(t.uint8,t.str),e[218]=u(t.uint16,t.str),e[219]=u(t.uint32,t.str),e[220]=u(t.uint16,t.array),e[221]=u(t.uint32,t.array),e[222]=u(t.uint16,t.map),e[223]=u(t.uint32,t.map),r=224;r<=255;r++)e[r]=f(r-256);return e}function o(t){var r,e=i(t).slice();for(e[217]=e[196],e[218]=e[197],e[219]=e[198],r=160;r<=191;r++)e[r]=a(r-160,t.bin);return e}function f(t){return function(){return t}}function u(t,r){return function(e){var n=t(e);return r(e,n)}}function a(t,r){return function(e){return r(e,t)}}var s=t("./read-format");e.getReadToken=n},{"./read-format":23}],25:[function(t,r,e){function n(t){function r(t,r){var n=e[typeof r];if(!n)throw new Error('Unsupported type "'+typeof r+'": '+r);n(t,r)}var e=s.getWriteType(t);return r}function i(){var t=this.options;return this.encode=n(t),t&&t.preset&&a.setExtPackers(this),this}function o(t,r,e){function n(r){return e&&(r=e(r)),new u(r,t)}e=c.filter(e);var i=r.name;if(i&&"Object"!==i){var o=this.extPackers||(this.extPackers={});o[i]=n}else{var f=this.extEncoderList||(this.extEncoderList=[]);f.unshift([r,n])}}function f(t){var r=this.extPackers||(this.extPackers={}),e=t.constructor,n=e&&e.name&&r[e.name];if(n)return n;for(var i=this.extEncoderList||(this.extEncoderList=[]),o=i.length,f=0;f<o;f++){var u=i[f];if(e===u[0])return u[1]}}var u=t("./ext-buffer").ExtBuffer,a=t("./ext-packer"),s=t("./write-type"),c=t("./codec-base");c.install({addExtPacker:o,getExtPacker:f,init:i}),e.preset=i.call(c.preset)},{"./codec-base":9,"./ext-buffer":17,"./ext-packer":18,"./write-type":27}],26:[function(t,r,e){function n(t){return t&&t.uint8array?i():m||E.hasBuffer&&t&&t.safe?f():o()}function i(){var t=o();return t[202]=c(202,4,p),t[203]=c(203,8,d),t}function o(){var t=w.slice();return t[196]=u(196),t[197]=a(197),t[198]=s(198),t[199]=u(199),t[200]=a(200),t[201]=s(201),t[202]=c(202,4,x.writeFloatBE||p,!0),t[203]=c(203,8,x.writeDoubleBE||d,!0),t[204]=u(204),t[205]=a(205),t[206]=s(206),t[207]=c(207,8,h),t[208]=u(208),t[209]=a(209),t[210]=s(210),t[211]=c(211,8,l),t[217]=u(217),t[218]=a(218),t[219]=s(219),t[220]=a(220),t[221]=s(221),t[222]=a(222),t[223]=s(223),t}function f(){var t=w.slice();return t[196]=c(196,1,Buffer.prototype.writeUInt8),t[197]=c(197,2,Buffer.prototype.writeUInt16BE),t[198]=c(198,4,Buffer.prototype.writeUInt32BE),t[199]=c(199,1,Buffer.prototype.writeUInt8),t[200]=c(200,2,Buffer.prototype.writeUInt16BE),t[201]=c(201,4,Buffer.prototype.writeUInt32BE),t[202]=c(202,4,Buffer.prototype.writeFloatBE),t[203]=c(203,8,Buffer.prototype.writeDoubleBE),t[204]=c(204,1,Buffer.prototype.writeUInt8),t[205]=c(205,2,Buffer.prototype.writeUInt16BE),t[206]=c(206,4,Buffer.prototype.writeUInt32BE),t[207]=c(207,8,h),t[208]=c(208,1,Buffer.prototype.writeInt8),t[209]=c(209,2,Buffer.prototype.writeInt16BE),t[210]=c(210,4,Buffer.prototype.writeInt32BE),t[211]=c(211,8,l),t[217]=c(217,1,Buffer.prototype.writeUInt8),t[218]=c(218,2,Buffer.prototype.writeUInt16BE),t[219]=c(219,4,Buffer.prototype.writeUInt32BE),t[220]=c(220,2,Buffer.prototype.writeUInt16BE),t[221]=c(221,4,Buffer.prototype.writeUInt32BE),t[222]=c(222,2,Buffer.prototype.writeUInt16BE),t[223]=c(223,4,Buffer.prototype.writeUInt32BE),t}function u(t){return function(r,e){var n=r.reserve(2),i=r.buffer;i[n++]=t,i[n]=e}}function a(t){return function(r,e){var n=r.reserve(3),i=r.buffer;i[n++]=t,i[n++]=e>>>8,i[n]=e}}function s(t){return function(r,e){var n=r.reserve(5),i=r.buffer;i[n++]=t,i[n++]=e>>>24,i[n++]=e>>>16,i[n++]=e>>>8,i[n]=e}}function c(t,r,e,n){return function(i,o){var f=i.reserve(r+1);i.buffer[f++]=t,e.call(i.buffer,o,f,n)}}function h(t,r){new g(this,r,t)}function l(t,r){new b(this,r,t)}function p(t,r){y.write(this,t,r,!1,23,4)}function d(t,r){y.write(this,t,r,!1,52,8)}var y=t("ieee754"),v=t("int64-buffer"),g=v.Uint64BE,b=v.Int64BE,w=t("./write-uint8").uint8,E=t("./bufferish"),Buffer=E.global,A=E.hasBuffer&&"TYPED_ARRAY_SUPPORT"in Buffer,m=A&&!Buffer.TYPED_ARRAY_SUPPORT,x=E.hasBuffer&&Buffer.prototype||{};e.getWriteToken=n},{"./bufferish":8,"./write-uint8":28,ieee754:32,"int64-buffer":33}],27:[function(t,r,e){function n(t){function r(t,r){var e=r?195:194;_[e](t,r)}function e(t,r){var e,n=0|r;return r!==n?(e=203,void _[e](t,r)):(e=-32<=n&&n<=127?255&n:0<=n?n<=255?204:n<=65535?205:206:-128<=n?208:-32768<=n?209:210,void _[e](t,n))}function n(t,r){var e=207;_[e](t,r.toArray())}function o(t,r){var e=211;_[e](t,r.toArray())}function v(t){return t<32?1:t<=255?2:t<=65535?3:5}function g(t){return t<32?1:t<=65535?3:5}function b(t){function r(r,e){var n=e.length,i=5+3*n;r.offset=r.reserve(i);var o=r.buffer,f=t(n),u=r.offset+f;n=s.write.call(o,e,u);var a=t(n);if(f!==a){var c=u+a-f,h=u+n;s.copy.call(o,o,c,u,h)}var l=1===a?160+n:a<=3?215+a:219;_[l](r,n),r.offset+=n}return r}function w(t,r){if(null===r)return A(t,r);if(I(r))return Y(t,r);if(i(r))return m(t,r);if(f.isUint64BE(r))return n(t,r);if(u.isInt64BE(r))return o(t,r);var e=t.codec.getExtPacker(r);return e&&(r=e(r)),r instanceof l?U(t,r):void D(t,r)}function E(t,r){return I(r)?k(t,r):void w(t,r)}function A(t,r){var e=192;_[e](t,r)}function m(t,r){var e=r.length,n=e<16?144+e:e<=65535?220:221;_[n](t,e);for(var i=t.codec.encode,o=0;o<e;o++)i(t,r[o])}function x(t,r){var e=r.length,n=e<255?196:e<=65535?197:198;_[n](t,e),t.send(r)}function B(t,r){x(t,new Uint8Array(r))}function U(t,r){var e=r.buffer,n=e.length,i=y[n]||(n<255?199:n<=65535?200:201);_[i](t,n),h[r.type](t),t.send(e)}function P(t,r){var e=Object.keys(r),n=e.length,i=n<16?128+n:n<=65535?222:223;_[i](t,n);var o=t.codec.encode;e.forEach(function(e){o(t,e),o(t,r[e])})}function R(t,r){if(!(r instanceof Map))return P(t,r);var e=r.size,n=e<16?128+e:e<=65535?222:223;_[n](t,e);var i=t.codec.encode;r.forEach(function(r,e,n){i(t,e),i(t,r)})}function k(t,r){var e=r.length,n=e<32?160+e:e<=65535?218:219;_[n](t,e),t.send(r)}var _=c.getWriteToken(t),T=t&&t.useraw,S=p&&t&&t.binarraybuffer,I=S?a.isArrayBuffer:a.isBuffer,Y=S?B:x,C=d&&t&&t.usemap,D=C?R:P,O={boolean:r,function:A,number:e,object:T?E:w,string:b(T?g:v),symbol:A,undefined:A};return O}var i=t("isarray"),o=t("int64-buffer"),f=o.Uint64BE,u=o.Int64BE,a=t("./bufferish"),s=t("./bufferish-proto"),c=t("./write-token"),h=t("./write-uint8").uint8,l=t("./ext-buffer").ExtBuffer,p="undefined"!=typeof Uint8Array,d="undefined"!=typeof Map,y=[];y[1]=212,y[2]=213,y[4]=214,y[8]=215,y[16]=216,e.getWriteType=n},{"./bufferish":8,"./bufferish-proto":6,"./ext-buffer":17,"./write-token":26,"./write-uint8":28,"int64-buffer":33,isarray:34}],28:[function(t,r,e){function n(t){return function(r){var e=r.reserve(1);r.buffer[e]=t}}for(var i=e.uint8=new Array(256),o=0;o<=255;o++)i[o]=n(o)},{}],29:[function(t,r,e){(function(r){"use strict";function n(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}function i(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function o(t,r){if(i()<r)throw new RangeError("Invalid typed array length");return Buffer.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(r),t.__proto__=Buffer.prototype):(null===t&&(t=new Buffer(r)),t.length=r),t}function Buffer(t,r,e){if(!(Buffer.TYPED_ARRAY_SUPPORT||this instanceof Buffer))return new Buffer(t,r,e);if("number"==typeof t){if("string"==typeof r)throw new Error("If encoding is specified then the first argument must be a string");return s(this,t)}return f(this,t,r,e)}function f(t,r,e,n){if("number"==typeof r)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&r instanceof ArrayBuffer?l(t,r,e,n):"string"==typeof r?c(t,r,e):p(t,r)}function u(t){if("number"!=typeof t)throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function a(t,r,e,n){return u(r),r<=0?o(t,r):void 0!==e?"string"==typeof n?o(t,r).fill(e,n):o(t,r).fill(e):o(t,r)}function s(t,r){if(u(r),t=o(t,r<0?0:0|d(r)),!Buffer.TYPED_ARRAY_SUPPORT)for(var e=0;e<r;++e)t[e]=0;return t}function c(t,r,e){if("string"==typeof e&&""!==e||(e="utf8"),!Buffer.isEncoding(e))throw new TypeError('"encoding" must be a valid string encoding');var n=0|v(r,e);t=o(t,n);var i=t.write(r,e);return i!==n&&(t=t.slice(0,i)),t}function h(t,r){var e=r.length<0?0:0|d(r.length);t=o(t,e);for(var n=0;n<e;n+=1)t[n]=255&r[n];return t}function l(t,r,e,n){if(r.byteLength,e<0||r.byteLength<e)throw new RangeError("'offset' is out of bounds");if(r.byteLength<e+(n||0))throw new RangeError("'length' is out of bounds");return r=void 0===e&&void 0===n?new Uint8Array(r):void 0===n?new Uint8Array(r,e):new Uint8Array(r,e,n),Buffer.TYPED_ARRAY_SUPPORT?(t=r,t.__proto__=Buffer.prototype):t=h(t,r),t}function p(t,r){if(Buffer.isBuffer(r)){var e=0|d(r.length);return t=o(t,e),0===t.length?t:(r.copy(t,0,0,e),t)}if(r){if("undefined"!=typeof ArrayBuffer&&r.buffer instanceof ArrayBuffer||"length"in r)return"number"!=typeof r.length||H(r.length)?o(t,0):h(t,r);if("Buffer"===r.type&&Q(r.data))return h(t,r.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function d(t){if(t>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|t}function y(t){return+t!=t&&(t=0),Buffer.alloc(+t)}function v(t,r){if(Buffer.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var e=t.length;if(0===e)return 0;for(var n=!1;;)switch(r){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":case void 0:return q(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return X(t).length;default:if(n)return q(t).length;r=(""+r).toLowerCase(),n=!0}}function g(t,r,e){var n=!1;if((void 0===r||r<0)&&(r=0),r>this.length)return"";if((void 0===e||e>this.length)&&(e=this.length),e<=0)return"";if(e>>>=0,r>>>=0,e<=r)return"";for(t||(t="utf8");;)switch(t){case"hex":return I(this,r,e);case"utf8":case"utf-8":return k(this,r,e);case"ascii":return T(this,r,e);case"latin1":case"binary":return S(this,r,e);case"base64":return R(this,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Y(this,r,e);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function b(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function w(t,r,e,n,i){if(0===t.length)return-1;if("string"==typeof e?(n=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),e=+e,isNaN(e)&&(e=i?0:t.length-1),e<0&&(e=t.length+e),e>=t.length){if(i)return-1;e=t.length-1}else if(e<0){if(!i)return-1;e=0}if("string"==typeof r&&(r=Buffer.from(r,n)),Buffer.isBuffer(r))return 0===r.length?-1:E(t,r,e,n,i);if("number"==typeof r)return r=255&r,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,r,e):Uint8Array.prototype.lastIndexOf.call(t,r,e):E(t,[r],e,n,i);throw new TypeError("val must be string, number or Buffer")}function E(t,r,e,n,i){function o(t,r){return 1===f?t[r]:t.readUInt16BE(r*f)}var f=1,u=t.length,a=r.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return-1;f=2,u/=2,a/=2,e/=2}var s;if(i){var c=-1;for(s=e;s<u;s++)if(o(t,s)===o(r,c===-1?0:s-c)){if(c===-1&&(c=s),s-c+1===a)return c*f}else c!==-1&&(s-=s-c),c=-1}else for(e+a>u&&(e=u-a),s=e;s>=0;s--){for(var h=!0,l=0;l<a;l++)if(o(t,s+l)!==o(r,l)){h=!1;break}if(h)return s}return-1}function A(t,r,e,n){e=Number(e)||0;var i=t.length-e;n?(n=Number(n),n>i&&(n=i)):n=i;var o=r.length;if(o%2!==0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var f=0;f<n;++f){var u=parseInt(r.substr(2*f,2),16);if(isNaN(u))return f;t[e+f]=u}return f}function m(t,r,e,n){return G(q(r,t.length-e),t,e,n)}function x(t,r,e,n){return G(W(r),t,e,n)}function B(t,r,e,n){return x(t,r,e,n)}function U(t,r,e,n){return G(X(r),t,e,n)}function P(t,r,e,n){return G(J(r,t.length-e),t,e,n)}function R(t,r,e){return 0===r&&e===t.length?Z.fromByteArray(t):Z.fromByteArray(t.slice(r,e))}function k(t,r,e){e=Math.min(t.length,e);for(var n=[],i=r;i<e;){var o=t[i],f=null,u=o>239?4:o>223?3:o>191?2:1;if(i+u<=e){var a,s,c,h;switch(u){case 1:o<128&&(f=o);break;case 2:a=t[i+1],128===(192&a)&&(h=(31&o)<<6|63&a,h>127&&(f=h));break;case 3:a=t[i+1],s=t[i+2],128===(192&a)&&128===(192&s)&&(h=(15&o)<<12|(63&a)<<6|63&s,h>2047&&(h<55296||h>57343)&&(f=h));break;case 4:a=t[i+1],s=t[i+2],c=t[i+3],128===(192&a)&&128===(192&s)&&128===(192&c)&&(h=(15&o)<<18|(63&a)<<12|(63&s)<<6|63&c,h>65535&&h<1114112&&(f=h))}}null===f?(f=65533,u=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=u}return _(n)}function _(t){var r=t.length;if(r<=$)return String.fromCharCode.apply(String,t);for(var e="",n=0;n<r;)e+=String.fromCharCode.apply(String,t.slice(n,n+=$));return e}function T(t,r,e){var n="";e=Math.min(t.length,e);for(var i=r;i<e;++i)n+=String.fromCharCode(127&t[i]);return n}function S(t,r,e){var n="";e=Math.min(t.length,e);for(var i=r;i<e;++i)n+=String.fromCharCode(t[i]);return n}function I(t,r,e){var n=t.length;(!r||r<0)&&(r=0),(!e||e<0||e>n)&&(e=n);for(var i="",o=r;o<e;++o)i+=V(t[o]);return i}function Y(t,r,e){for(var n=t.slice(r,e),i="",o=0;o<n.length;o+=2)i+=String.fromCharCode(n[o]+256*n[o+1]);return i}function C(t,r,e){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+r>e)throw new RangeError("Trying to access beyond buffer length")}function D(t,r,e,n,i,o){if(!Buffer.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>i||r<o)throw new RangeError('"value" argument is out of bounds');if(e+n>t.length)throw new RangeError("Index out of range")}function O(t,r,e,n){r<0&&(r=65535+r+1);for(var i=0,o=Math.min(t.length-e,2);i<o;++i)t[e+i]=(r&255<<8*(n?i:1-i))>>>8*(n?i:1-i)}function L(t,r,e,n){r<0&&(r=4294967295+r+1);for(var i=0,o=Math.min(t.length-e,4);i<o;++i)t[e+i]=r>>>8*(n?i:3-i)&255}function M(t,r,e,n,i,o){if(e+n>t.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function N(t,r,e,n,i){return i||M(t,r,e,4,3.4028234663852886e38,-3.4028234663852886e38),K.write(t,r,e,n,23,4),e+4}function F(t,r,e,n,i){return i||M(t,r,e,8,1.7976931348623157e308,-1.7976931348623157e308),K.write(t,r,e,n,52,8),e+8}function j(t){
2
+ if(t=z(t).replace(tt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function z(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function V(t){return t<16?"0"+t.toString(16):t.toString(16)}function q(t,r){r=r||1/0;for(var e,n=t.length,i=null,o=[],f=0;f<n;++f){if(e=t.charCodeAt(f),e>55295&&e<57344){if(!i){if(e>56319){(r-=3)>-1&&o.push(239,191,189);continue}if(f+1===n){(r-=3)>-1&&o.push(239,191,189);continue}i=e;continue}if(e<56320){(r-=3)>-1&&o.push(239,191,189),i=e;continue}e=(i-55296<<10|e-56320)+65536}else i&&(r-=3)>-1&&o.push(239,191,189);if(i=null,e<128){if((r-=1)<0)break;o.push(e)}else if(e<2048){if((r-=2)<0)break;o.push(e>>6|192,63&e|128)}else if(e<65536){if((r-=3)<0)break;o.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(e<1114112))throw new Error("Invalid code point");if((r-=4)<0)break;o.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return o}function W(t){for(var r=[],e=0;e<t.length;++e)r.push(255&t.charCodeAt(e));return r}function J(t,r){for(var e,n,i,o=[],f=0;f<t.length&&!((r-=2)<0);++f)e=t.charCodeAt(f),n=e>>8,i=e%256,o.push(i),o.push(n);return o}function X(t){return Z.toByteArray(j(t))}function G(t,r,e,n){for(var i=0;i<n&&!(i+e>=r.length||i>=t.length);++i)r[i+e]=t[i];return i}function H(t){return t!==t}var Z=t("base64-js"),K=t("ieee754"),Q=t("isarray");e.Buffer=Buffer,e.SlowBuffer=y,e.INSPECT_MAX_BYTES=50,Buffer.TYPED_ARRAY_SUPPORT=void 0!==r.TYPED_ARRAY_SUPPORT?r.TYPED_ARRAY_SUPPORT:n(),e.kMaxLength=i(),Buffer.poolSize=8192,Buffer._augment=function(t){return t.__proto__=Buffer.prototype,t},Buffer.from=function(t,r,e){return f(null,t,r,e)},Buffer.TYPED_ARRAY_SUPPORT&&(Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Buffer[Symbol.species]===Buffer&&Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:!0})),Buffer.alloc=function(t,r,e){return a(null,t,r,e)},Buffer.allocUnsafe=function(t){return s(null,t)},Buffer.allocUnsafeSlow=function(t){return s(null,t)},Buffer.isBuffer=function(t){return!(null==t||!t._isBuffer)},Buffer.compare=function(t,r){if(!Buffer.isBuffer(t)||!Buffer.isBuffer(r))throw new TypeError("Arguments must be Buffers");if(t===r)return 0;for(var e=t.length,n=r.length,i=0,o=Math.min(e,n);i<o;++i)if(t[i]!==r[i]){e=t[i],n=r[i];break}return e<n?-1:n<e?1:0},Buffer.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Buffer.concat=function(t,r){if(!Q(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return Buffer.alloc(0);var e;if(void 0===r)for(r=0,e=0;e<t.length;++e)r+=t[e].length;var n=Buffer.allocUnsafe(r),i=0;for(e=0;e<t.length;++e){var o=t[e];if(!Buffer.isBuffer(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(n,i),i+=o.length}return n},Buffer.byteLength=v,Buffer.prototype._isBuffer=!0,Buffer.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<t;r+=2)b(this,r,r+1);return this},Buffer.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<t;r+=4)b(this,r,r+3),b(this,r+1,r+2);return this},Buffer.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<t;r+=8)b(this,r,r+7),b(this,r+1,r+6),b(this,r+2,r+5),b(this,r+3,r+4);return this},Buffer.prototype.toString=function(){var t=0|this.length;return 0===t?"":0===arguments.length?k(this,0,t):g.apply(this,arguments)},Buffer.prototype.equals=function(t){if(!Buffer.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===Buffer.compare(this,t)},Buffer.prototype.inspect=function(){var t="",r=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),"<Buffer "+t+">"},Buffer.prototype.compare=function(t,r,e,n,i){if(!Buffer.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===r&&(r=0),void 0===e&&(e=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),r<0||e>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&r>=e)return 0;if(n>=i)return-1;if(r>=e)return 1;if(r>>>=0,e>>>=0,n>>>=0,i>>>=0,this===t)return 0;for(var o=i-n,f=e-r,u=Math.min(o,f),a=this.slice(n,i),s=t.slice(r,e),c=0;c<u;++c)if(a[c]!==s[c]){o=a[c],f=s[c];break}return o<f?-1:f<o?1:0},Buffer.prototype.includes=function(t,r,e){return this.indexOf(t,r,e)!==-1},Buffer.prototype.indexOf=function(t,r,e){return w(this,t,r,e,!0)},Buffer.prototype.lastIndexOf=function(t,r,e){return w(this,t,r,e,!1)},Buffer.prototype.write=function(t,r,e,n){if(void 0===r)n="utf8",e=this.length,r=0;else if(void 0===e&&"string"==typeof r)n=r,e=this.length,r=0;else{if(!isFinite(r))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");r=0|r,isFinite(e)?(e=0|e,void 0===n&&(n="utf8")):(n=e,e=void 0)}var i=this.length-r;if((void 0===e||e>i)&&(e=i),t.length>0&&(e<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return A(this,t,r,e);case"utf8":case"utf-8":return m(this,t,r,e);case"ascii":return x(this,t,r,e);case"latin1":case"binary":return B(this,t,r,e);case"base64":return U(this,t,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,r,e);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var $=4096;Buffer.prototype.slice=function(t,r){var e=this.length;t=~~t,r=void 0===r?e:~~r,t<0?(t+=e,t<0&&(t=0)):t>e&&(t=e),r<0?(r+=e,r<0&&(r=0)):r>e&&(r=e),r<t&&(r=t);var n;if(Buffer.TYPED_ARRAY_SUPPORT)n=this.subarray(t,r),n.__proto__=Buffer.prototype;else{var i=r-t;n=new Buffer(i,void 0);for(var o=0;o<i;++o)n[o]=this[o+t]}return n},Buffer.prototype.readUIntLE=function(t,r,e){t=0|t,r=0|r,e||C(t,r,this.length);for(var n=this[t],i=1,o=0;++o<r&&(i*=256);)n+=this[t+o]*i;return n},Buffer.prototype.readUIntBE=function(t,r,e){t=0|t,r=0|r,e||C(t,r,this.length);for(var n=this[t+--r],i=1;r>0&&(i*=256);)n+=this[t+--r]*i;return n},Buffer.prototype.readUInt8=function(t,r){return r||C(t,1,this.length),this[t]},Buffer.prototype.readUInt16LE=function(t,r){return r||C(t,2,this.length),this[t]|this[t+1]<<8},Buffer.prototype.readUInt16BE=function(t,r){return r||C(t,2,this.length),this[t]<<8|this[t+1]},Buffer.prototype.readUInt32LE=function(t,r){return r||C(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},Buffer.prototype.readUInt32BE=function(t,r){return r||C(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},Buffer.prototype.readIntLE=function(t,r,e){t=0|t,r=0|r,e||C(t,r,this.length);for(var n=this[t],i=1,o=0;++o<r&&(i*=256);)n+=this[t+o]*i;return i*=128,n>=i&&(n-=Math.pow(2,8*r)),n},Buffer.prototype.readIntBE=function(t,r,e){t=0|t,r=0|r,e||C(t,r,this.length);for(var n=r,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*r)),o},Buffer.prototype.readInt8=function(t,r){return r||C(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},Buffer.prototype.readInt16LE=function(t,r){r||C(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?4294901760|e:e},Buffer.prototype.readInt16BE=function(t,r){r||C(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?4294901760|e:e},Buffer.prototype.readInt32LE=function(t,r){return r||C(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},Buffer.prototype.readInt32BE=function(t,r){return r||C(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},Buffer.prototype.readFloatLE=function(t,r){return r||C(t,4,this.length),K.read(this,t,!0,23,4)},Buffer.prototype.readFloatBE=function(t,r){return r||C(t,4,this.length),K.read(this,t,!1,23,4)},Buffer.prototype.readDoubleLE=function(t,r){return r||C(t,8,this.length),K.read(this,t,!0,52,8)},Buffer.prototype.readDoubleBE=function(t,r){return r||C(t,8,this.length),K.read(this,t,!1,52,8)},Buffer.prototype.writeUIntLE=function(t,r,e,n){if(t=+t,r=0|r,e=0|e,!n){var i=Math.pow(2,8*e)-1;D(this,t,r,e,i,0)}var o=1,f=0;for(this[r]=255&t;++f<e&&(o*=256);)this[r+f]=t/o&255;return r+e},Buffer.prototype.writeUIntBE=function(t,r,e,n){if(t=+t,r=0|r,e=0|e,!n){var i=Math.pow(2,8*e)-1;D(this,t,r,e,i,0)}var o=e-1,f=1;for(this[r+o]=255&t;--o>=0&&(f*=256);)this[r+o]=t/f&255;return r+e},Buffer.prototype.writeUInt8=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,1,255,0),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[r]=255&t,r+1},Buffer.prototype.writeUInt16LE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):O(this,t,r,!0),r+2},Buffer.prototype.writeUInt16BE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):O(this,t,r,!1),r+2},Buffer.prototype.writeUInt32LE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=255&t):L(this,t,r,!0),r+4},Buffer.prototype.writeUInt32BE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t):L(this,t,r,!1),r+4},Buffer.prototype.writeIntLE=function(t,r,e,n){if(t=+t,r=0|r,!n){var i=Math.pow(2,8*e-1);D(this,t,r,e,i-1,-i)}var o=0,f=1,u=0;for(this[r]=255&t;++o<e&&(f*=256);)t<0&&0===u&&0!==this[r+o-1]&&(u=1),this[r+o]=(t/f>>0)-u&255;return r+e},Buffer.prototype.writeIntBE=function(t,r,e,n){if(t=+t,r=0|r,!n){var i=Math.pow(2,8*e-1);D(this,t,r,e,i-1,-i)}var o=e-1,f=1,u=0;for(this[r+o]=255&t;--o>=0&&(f*=256);)t<0&&0===u&&0!==this[r+o+1]&&(u=1),this[r+o]=(t/f>>0)-u&255;return r+e},Buffer.prototype.writeInt8=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,1,127,-128),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[r]=255&t,r+1},Buffer.prototype.writeInt16LE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):O(this,t,r,!0),r+2},Buffer.prototype.writeInt16BE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):O(this,t,r,!1),r+2},Buffer.prototype.writeInt32LE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,4,2147483647,-2147483648),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24):L(this,t,r,!0),r+4},Buffer.prototype.writeInt32BE=function(t,r,e){return t=+t,r=0|r,e||D(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t):L(this,t,r,!1),r+4},Buffer.prototype.writeFloatLE=function(t,r,e){return N(this,t,r,!0,e)},Buffer.prototype.writeFloatBE=function(t,r,e){return N(this,t,r,!1,e)},Buffer.prototype.writeDoubleLE=function(t,r,e){return F(this,t,r,!0,e)},Buffer.prototype.writeDoubleBE=function(t,r,e){return F(this,t,r,!1,e)},Buffer.prototype.copy=function(t,r,e,n){if(e||(e=0),n||0===n||(n=this.length),r>=t.length&&(r=t.length),r||(r=0),n>0&&n<e&&(n=e),n===e)return 0;if(0===t.length||0===this.length)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(e<0||e>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-r<n-e&&(n=t.length-r+e);var i,o=n-e;if(this===t&&e<r&&r<n)for(i=o-1;i>=0;--i)t[i+r]=this[i+e];else if(o<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(i=0;i<o;++i)t[i+r]=this[i+e];else Uint8Array.prototype.set.call(t,this.subarray(e,e+o),r);return o},Buffer.prototype.fill=function(t,r,e,n){if("string"==typeof t){if("string"==typeof r?(n=r,r=0,e=this.length):"string"==typeof e&&(n=e,e=this.length),1===t.length){var i=t.charCodeAt(0);i<256&&(t=i)}if(void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!Buffer.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"==typeof t&&(t=255&t);if(r<0||this.length<r||this.length<e)throw new RangeError("Out of range index");if(e<=r)return this;r>>>=0,e=void 0===e?this.length:e>>>0,t||(t=0);var o;if("number"==typeof t)for(o=r;o<e;++o)this[o]=t;else{var f=Buffer.isBuffer(t)?t:q(new Buffer(t,n).toString()),u=f.length;for(o=0;o<e-r;++o)this[o+r]=f[o%u]}return this};var tt=/[^+\/0-9A-Za-z-_]/g}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":30,ieee754:32,isarray:34}],30:[function(t,r,e){"use strict";function n(t){var r=t.length;if(r%4>0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===t[r-2]?2:"="===t[r-1]?1:0}function i(t){return 3*t.length/4-n(t)}function o(t){var r,e,i,o,f,u,a=t.length;f=n(t),u=new h(3*a/4-f),i=f>0?a-4:a;var s=0;for(r=0,e=0;r<i;r+=4,e+=3)o=c[t.charCodeAt(r)]<<18|c[t.charCodeAt(r+1)]<<12|c[t.charCodeAt(r+2)]<<6|c[t.charCodeAt(r+3)],u[s++]=o>>16&255,u[s++]=o>>8&255,u[s++]=255&o;return 2===f?(o=c[t.charCodeAt(r)]<<2|c[t.charCodeAt(r+1)]>>4,u[s++]=255&o):1===f&&(o=c[t.charCodeAt(r)]<<10|c[t.charCodeAt(r+1)]<<4|c[t.charCodeAt(r+2)]>>2,u[s++]=o>>8&255,u[s++]=255&o),u}function f(t){return s[t>>18&63]+s[t>>12&63]+s[t>>6&63]+s[63&t]}function u(t,r,e){for(var n,i=[],o=r;o<e;o+=3)n=(t[o]<<16)+(t[o+1]<<8)+t[o+2],i.push(f(n));return i.join("")}function a(t){for(var r,e=t.length,n=e%3,i="",o=[],f=16383,a=0,c=e-n;a<c;a+=f)o.push(u(t,a,a+f>c?c:a+f));return 1===n?(r=t[e-1],i+=s[r>>2],i+=s[r<<4&63],i+="=="):2===n&&(r=(t[e-2]<<8)+t[e-1],i+=s[r>>10],i+=s[r>>4&63],i+=s[r<<2&63],i+="="),o.push(i),o.join("")}e.byteLength=i,e.toByteArray=o,e.fromByteArray=a;for(var s=[],c=[],h="undefined"!=typeof Uint8Array?Uint8Array:Array,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",p=0,d=l.length;p<d;++p)s[p]=l[p],c[l.charCodeAt(p)]=p;c["-".charCodeAt(0)]=62,c["_".charCodeAt(0)]=63},{}],31:[function(t,r,e){function n(){if(!(this instanceof n))return new n}!function(t){function e(t){for(var r in s)t[r]=s[r];return t}function n(t,r){return u(this,t).push(r),this}function i(t,r){function e(){o.call(n,t,e),r.apply(this,arguments)}var n=this;return e.originalListener=r,u(n,t).push(e),n}function o(t,r){function e(t){return t!==r&&t.originalListener!==r}var n,i=this;if(arguments.length){if(r){if(n=u(i,t,!0)){if(n=n.filter(e),!n.length)return o.call(i,t);i[a][t]=n}}else if(n=i[a],n&&(delete n[t],!Object.keys(n).length))return o.call(i)}else delete i[a];return i}function f(t,r){function e(t){t.call(o)}function n(t){t.call(o,r)}function i(t){t.apply(o,s)}var o=this,f=u(o,t,!0);if(!f)return!1;var a=arguments.length;if(1===a)f.forEach(e);else if(2===a)f.forEach(n);else{var s=Array.prototype.slice.call(arguments,1);f.forEach(i)}return!!f.length}function u(t,r,e){if(!e||t[a]){var n=t[a]||(t[a]={});return n[r]||(n[r]=[])}}"undefined"!=typeof r&&(r.exports=t);var a="listeners",s={on:n,once:i,off:o,emit:f};e(t.prototype),t.mixin=e}(n)},{}],32:[function(t,r,e){e.read=function(t,r,e,n,i){var o,f,u=8*i-n-1,a=(1<<u)-1,s=a>>1,c=-7,h=e?i-1:0,l=e?-1:1,p=t[r+h];for(h+=l,o=p&(1<<-c)-1,p>>=-c,c+=u;c>0;o=256*o+t[r+h],h+=l,c-=8);for(f=o&(1<<-c)-1,o>>=-c,c+=n;c>0;f=256*f+t[r+h],h+=l,c-=8);if(0===o)o=1-s;else{if(o===a)return f?NaN:(p?-1:1)*(1/0);f+=Math.pow(2,n),o-=s}return(p?-1:1)*f*Math.pow(2,o-n)},e.write=function(t,r,e,n,i,o){var f,u,a,s=8*o-i-1,c=(1<<s)-1,h=c>>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,d=n?1:-1,y=r<0||0===r&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(u=isNaN(r)?1:0,f=c):(f=Math.floor(Math.log(r)/Math.LN2),r*(a=Math.pow(2,-f))<1&&(f--,a*=2),r+=f+h>=1?l/a:l*Math.pow(2,1-h),r*a>=2&&(f++,a/=2),f+h>=c?(u=0,f=c):f+h>=1?(u=(r*a-1)*Math.pow(2,i),f+=h):(u=r*Math.pow(2,h-1)*Math.pow(2,i),f=0));i>=8;t[e+p]=255&u,p+=d,u/=256,i-=8);for(f=f<<i|u,s+=i;s>0;t[e+p]=255&f,p+=d,f/=256,s-=8);t[e+p-d]|=128*y}},{}],33:[function(t,r,e){(function(Buffer){var t,r,n,i;!function(e){function o(t,r,n){function i(t,r,e,n){return this instanceof i?v(this,t,r,e,n):new i(t,r,e,n)}function o(t){return!(!t||!t[F])}function v(t,r,e,n,i){if(E&&A&&(r instanceof A&&(r=new E(r)),n instanceof A&&(n=new E(n))),!(r||e||n||g))return void(t.buffer=h(m,0));if(!s(r,e)){var o=g||Array;i=e,n=r,e=0,r=new o(8)}t.buffer=r,t.offset=e|=0,b!==typeof n&&("string"==typeof n?x(r,e,n,i||10):s(n,i)?c(r,e,n,i):"number"==typeof i?(k(r,e+T,n),k(r,e+S,i)):n>0?O(r,e,n):n<0?L(r,e,n):c(r,e,m,0))}function x(t,r,e,n){var i=0,o=e.length,f=0,u=0;"-"===e[0]&&i++;for(var a=i;i<o;){var s=parseInt(e[i++],n);if(!(s>=0))break;u=u*n+s,f=f*n+Math.floor(u/B),u%=B}a&&(f=~f,u?u=B-u:f++),k(t,r+T,f),k(t,r+S,u)}function P(){var t=this.buffer,r=this.offset,e=_(t,r+T),i=_(t,r+S);return n||(e|=0),e?e*B+i:i}function R(t){var r=this.buffer,e=this.offset,i=_(r,e+T),o=_(r,e+S),f="",u=!n&&2147483648&i;for(u&&(i=~i,o=B-o),t=t||10;;){var a=i%t*B+o;if(i=Math.floor(i/t),o=Math.floor(a/t),f=(a%t).toString(t)+f,!i&&!o)break}return u&&(f="-"+f),f}function k(t,r,e){t[r+D]=255&e,e>>=8,t[r+C]=255&e,e>>=8,t[r+Y]=255&e,e>>=8,t[r+I]=255&e}function _(t,r){return t[r+I]*U+(t[r+Y]<<16)+(t[r+C]<<8)+t[r+D]}var T=r?0:4,S=r?4:0,I=r?0:3,Y=r?1:2,C=r?2:1,D=r?3:0,O=r?l:d,L=r?p:y,M=i.prototype,N="is"+t,F="_"+N;return M.buffer=void 0,M.offset=0,M[F]=!0,M.toNumber=P,M.toString=R,M.toJSON=P,M.toArray=f,w&&(M.toBuffer=u),E&&(M.toArrayBuffer=a),i[N]=o,e[t]=i,i}function f(t){var r=this.buffer,e=this.offset;return g=null,t!==!1&&0===e&&8===r.length&&x(r)?r:h(r,e)}function u(t){var r=this.buffer,e=this.offset;if(g=w,t!==!1&&0===e&&8===r.length&&Buffer.isBuffer(r))return r;var n=new w(8);return c(n,0,r,e),n}function a(t){var r=this.buffer,e=this.offset,n=r.buffer;if(g=E,t!==!1&&0===e&&n instanceof A&&8===n.byteLength)return n;var i=new E(8);return c(i,0,r,e),i.buffer}function s(t,r){var e=t&&t.length;return r|=0,e&&r+8<=e&&"string"!=typeof t[r]}function c(t,r,e,n){r|=0,n|=0;for(var i=0;i<8;i++)t[r++]=255&e[n++]}function h(t,r){return Array.prototype.slice.call(t,r,r+8)}function l(t,r,e){for(var n=r+8;n>r;)t[--n]=255&e,e/=256}function p(t,r,e){var n=r+8;for(e++;n>r;)t[--n]=255&-e^255,e/=256}function d(t,r,e){for(var n=r+8;r<n;)t[r++]=255&e,e/=256}function y(t,r,e){var n=r+8;for(e++;r<n;)t[r++]=255&-e^255,e/=256}function v(t){return!!t&&"[object Array]"==Object.prototype.toString.call(t)}var g,b="undefined",w=b!==typeof Buffer&&Buffer,E=b!==typeof Uint8Array&&Uint8Array,A=b!==typeof ArrayBuffer&&ArrayBuffer,m=[0,0,0,0,0,0,0,0],x=Array.isArray||v,B=4294967296,U=16777216;t=o("Uint64BE",!0,!0),r=o("Int64BE",!0,!1),n=o("Uint64LE",!1,!0),i=o("Int64LE",!1,!1)}("object"==typeof e&&"string"!=typeof e.nodeName?e:this||{})}).call(this,t("buffer").Buffer)},{buffer:29}],34:[function(t,r,e){var n={}.toString;r.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},{}]},{},[1])(1)});
@@ -0,0 +1,11 @@
1
+ /* globals Buffer */
2
+
3
+ module.exports =
4
+ c(("undefined" !== typeof Buffer) && Buffer) ||
5
+ c(this.Buffer) ||
6
+ c(("undefined" !== typeof window) && window.Buffer) ||
7
+ this.Buffer;
8
+
9
+ function c(B) {
10
+ return B && B.isBuffer && B;
11
+ }
@@ -1,79 +1,115 @@
1
- // util.js
2
-
3
- var Int64Buffer = require("int64-buffer");
4
- var Uint64BE = Int64Buffer.Uint64BE;
5
- var Int64BE = Int64Buffer.Int64BE;
1
+ // buffer-lite.js
6
2
 
7
3
  var MAXBUFLEN = 8192;
8
4
 
9
- exports.writeString = writeString;
10
- exports.readString = readString;
11
- exports.byteLength = byteLength;
12
5
  exports.copy = copy;
13
- exports.writeUint64BE = writeUint64BE;
14
- exports.writeInt64BE = writeInt64BE;
6
+ exports.toString = toString;
7
+ exports.write = write;
15
8
 
16
- // new Buffer(string, "utf-8") is SLOWER then below
9
+ /**
10
+ * Buffer.prototype.write()
11
+ *
12
+ * @param string {String}
13
+ * @param [offset] {Number}
14
+ * @returns {Number}
15
+ */
17
16
 
18
- function writeString(string, start) {
17
+ function write(string, offset) {
19
18
  var buffer = this;
20
- var index = start || 0;
19
+ var index = offset || (offset |= 0);
21
20
  var length = string.length;
22
- // JavaScript's string uses UTF-16 surrogate pairs for characters other than BMP.
23
- // This encodes string as CESU-8 which never reaches 4 octets per character.
24
- for (var i = 0; i < length; i++) {
25
- var chr = string.charCodeAt(i);
26
- if (chr < 0x80) {
21
+ var chr = 0;
22
+ var i = 0;
23
+ while (i < length) {
24
+ chr = string.charCodeAt(i++);
25
+
26
+ if (chr < 128) {
27
27
  buffer[index++] = chr;
28
28
  } else if (chr < 0x800) {
29
- buffer[index++] = 0xC0 | (chr >> 6);
29
+ // 2 bytes
30
+ buffer[index++] = 0xC0 | (chr >>> 6);
30
31
  buffer[index++] = 0x80 | (chr & 0x3F);
32
+ } else if (chr < 0xD800 || chr > 0xDFFF) {
33
+ // 3 bytes
34
+ buffer[index++] = 0xE0 | (chr >>> 12);
35
+ buffer[index++] = 0x80 | ((chr >>> 6) & 0x3F);
36
+ buffer[index++] = 0x80 | (chr & 0x3F);
31
37
  } else {
32
- buffer[index++] = 0xE0 | (chr >> 12);
33
- buffer[index++] = 0x80 | ((chr >> 6) & 0x3F);
34
- buffer[index++] = 0x80 | (chr & 0x3F);
38
+ // 4 bytes - surrogate pair
39
+ chr = (((chr - 0xD800) << 10) | (string.charCodeAt(i++) - 0xDC00)) + 0x10000;
40
+ buffer[index++] = 0xF0 | (chr >>> 18);
41
+ buffer[index++] = 0x80 | ((chr >>> 12) & 0x3F);
42
+ buffer[index++] = 0x80 | ((chr >>> 6) & 0x3F);
43
+ buffer[index++] = 0x80 | (chr & 0x3F);
35
44
  }
36
45
  }
37
- return index - start;
46
+ return index - offset;
38
47
  }
39
48
 
40
- // Buffer.ptototype.toString is 2x FASTER then below
41
- // https://github.com/feross/buffer may throw "Maximum call stack size exceeded." at String.fromCharCode.apply.
49
+ /**
50
+ * Buffer.prototype.toString()
51
+ *
52
+ * @param [encoding] {String} ignored
53
+ * @param [start] {Number}
54
+ * @param [end] {Number}
55
+ * @returns {String}
56
+ */
42
57
 
43
- function readString(start, end) {
58
+ function toString(encoding, start, end) {
44
59
  var buffer = this;
45
- var index = start - 0 || 0;
60
+ var index = start|0;
46
61
  if (!end) end = buffer.length;
47
- var size = end - start;
48
- if (size > MAXBUFLEN) size = MAXBUFLEN;
49
- var out = [];
50
- for (; index < end;) {
51
- var array = new Array(size);
52
- for (var pos = 0; pos < size && index < end;) {
53
- var chr = buffer[index++];
54
- chr = (chr < 0x80) ? chr :
55
- (chr < 0xE0) ? (((chr & 0x3F) << 6) | (buffer[index++] & 0x3F)) :
56
- (((chr & 0x3F) << 12) | ((buffer[index++] & 0x3F) << 6) | ((buffer[index++] & 0x3F)));
57
- array[pos++] = chr;
62
+ var string = '';
63
+ var chr = 0;
64
+
65
+ while (index < end) {
66
+ chr = buffer[index++];
67
+ if (chr < 128) {
68
+ string += String.fromCharCode(chr);
69
+ continue;
58
70
  }
59
- if (pos < size) array = array.slice(0, pos);
60
- out.push(String.fromCharCode.apply("", array));
61
- }
62
- return (out.length > 1) ? out.join("") : out.length ? out.shift() : "";
63
- }
64
71
 
65
- // Buffer.byteLength is FASTER than below
72
+ if ((chr & 0xE0) === 0xC0) {
73
+ // 2 bytes
74
+ chr = (chr & 0x1F) << 6 |
75
+ (buffer[index++] & 0x3F);
76
+
77
+ } else if ((chr & 0xF0) === 0xE0) {
78
+ // 3 bytes
79
+ chr = (chr & 0x0F) << 12 |
80
+ (buffer[index++] & 0x3F) << 6 |
81
+ (buffer[index++] & 0x3F);
82
+
83
+ } else if ((chr & 0xF8) === 0xF0) {
84
+ // 4 bytes
85
+ chr = (chr & 0x07) << 18 |
86
+ (buffer[index++] & 0x3F) << 12 |
87
+ (buffer[index++] & 0x3F) << 6 |
88
+ (buffer[index++] & 0x3F);
89
+ }
90
+
91
+ if (chr >= 0x010000) {
92
+ // A surrogate pair
93
+ chr -= 0x010000;
94
+
95
+ string += String.fromCharCode((chr >>> 10) + 0xD800, (chr & 0x3FF) + 0xDC00);
96
+ } else {
97
+ string += String.fromCharCode(chr);
98
+ }
99
+ }
66
100
 
67
- function byteLength(string) {
68
- var length = 0 | 0;
69
- Array.prototype.forEach.call(string, function(chr) {
70
- var code = chr.charCodeAt(0);
71
- length += (code < 0x80) ? 1 : (code < 0x800) ? 2 : 3;
72
- });
73
- return length;
101
+ return string;
74
102
  }
75
103
 
76
- // https://github.com/feross/buffer lacks descending copying feature
104
+ /**
105
+ * Buffer.prototype.copy()
106
+ *
107
+ * @param target {Buffer}
108
+ * @param [targetStart] {Number}
109
+ * @param [start] {Number}
110
+ * @param [end] {Number}
111
+ * @returns {number}
112
+ */
77
113
 
78
114
  function copy(target, targetStart, start, end) {
79
115
  var i;
@@ -96,11 +132,3 @@ function copy(target, targetStart, start, end) {
96
132
 
97
133
  return len;
98
134
  }
99
-
100
- function writeUint64BE(value, offset) {
101
- new Uint64BE(this, offset, value);
102
- }
103
-
104
- function writeInt64BE(value, offset) {
105
- new Int64BE(this, offset, value);
106
- }
@@ -0,0 +1,41 @@
1
+ // bufferish-array.js
2
+
3
+ var Bufferish = require("./bufferish");
4
+
5
+ var exports = module.exports = alloc(0);
6
+
7
+ exports.alloc = alloc;
8
+ exports.concat = Bufferish.concat;
9
+ exports.from = from;
10
+
11
+ /**
12
+ * @param size {Number}
13
+ * @returns {Buffer|Uint8Array|Array}
14
+ */
15
+
16
+ function alloc(size) {
17
+ return new Array(size);
18
+ }
19
+
20
+ /**
21
+ * @param value {Array|ArrayBuffer|Buffer|String}
22
+ * @returns {Array}
23
+ */
24
+
25
+ function from(value) {
26
+ if (!Bufferish.isBuffer(value) && Bufferish.isView(value)) {
27
+ // TypedArray to Uint8Array
28
+ value = Bufferish.Uint8Array.from(value);
29
+ } else if (Bufferish.isArrayBuffer(value)) {
30
+ // ArrayBuffer to Uint8Array
31
+ value = new Uint8Array(value);
32
+ } else if (typeof value === "string") {
33
+ // String to Array
34
+ return Bufferish.from.call(exports, value);
35
+ } else if (typeof value === "number") {
36
+ throw new TypeError('"value" argument must not be a number');
37
+ }
38
+
39
+ // Array-like to Array
40
+ return Array.prototype.slice.call(value);
41
+ }