urbit-ob

JavaScript utilities for phonemic base wrangling.
Log | Files | Refs | README

commit 2d1518224fcbdd6180c2ae23fcaf65ae13cfde63
parent 380f5e0ad2f70639c264ad941053f5fd1da8f33e
Author: Anthony Arroyo <anthony@tlon.io>
Date:   Mon,  3 Sep 2018 21:10:44 -0600

Merge pull request #2 from urbit/gulp

Gulp
Diffstat:
M.gitignore | 19++++++++++++++++++-
Adist/index.js | 1+
Agulpfile.js | 58++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dindex.js | 439-------------------------------------------------------------------------------
Mpackage-lock.json | 9447++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Mpackage.json | 30++++++++++++++++++++++++------
Asrc/index.js | 464+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dtest/.main.js.swp | 0
Atest/core.test.js | 110+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dtest/main.js | 31-------------------------------
Atest/util.test.js | 53+++++++++++++++++++++++++++++++++++++++++++++++++++++
11 files changed, 10159 insertions(+), 493 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -1 +1,18 @@ -node_modules + +# dependencies +/node_modules + +# testing +/coverage + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local +.env + +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/dist/index.js b/dist/index.js @@ -0,0 +1 @@ +function createCommonjsModule(t,r){return r={exports:{}},t(r,r.exports),r.exports}function init(){inited=!0;for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=0,n=t.length;r<n;++r)lookup[r]=t[r],revLookup[t.charCodeAt(r)]=r;revLookup["-".charCodeAt(0)]=62,revLookup["_".charCodeAt(0)]=63}function toByteArray(t){inited||init();var r,n,e,i,u,o,f=t.length;if(f%4>0)throw new Error("Invalid string. Length must be a multiple of 4");u="="===t[f-2]?2:"="===t[f-1]?1:0,o=new Arr(3*f/4-u),e=u>0?f-4:f;var a=0;for(r=0,n=0;r<e;r+=4,n+=3)i=revLookup[t.charCodeAt(r)]<<18|revLookup[t.charCodeAt(r+1)]<<12|revLookup[t.charCodeAt(r+2)]<<6|revLookup[t.charCodeAt(r+3)],o[a++]=i>>16&255,o[a++]=i>>8&255,o[a++]=255&i;return 2===u?(i=revLookup[t.charCodeAt(r)]<<2|revLookup[t.charCodeAt(r+1)]>>4,o[a++]=255&i):1===u&&(i=revLookup[t.charCodeAt(r)]<<10|revLookup[t.charCodeAt(r+1)]<<4|revLookup[t.charCodeAt(r+2)]>>2,o[a++]=i>>8&255,o[a++]=255&i),o}function tripletToBase64(t){return lookup[t>>18&63]+lookup[t>>12&63]+lookup[t>>6&63]+lookup[63&t]}function encodeChunk(t,r,n){for(var e,i=[],u=r;u<n;u+=3)e=(t[u]<<16)+(t[u+1]<<8)+t[u+2],i.push(tripletToBase64(e));return i.join("")}function fromByteArray(t){inited||init();for(var r,n=t.length,e=n%3,i="",u=[],o=0,f=n-e;o<f;o+=16383)u.push(encodeChunk(t,o,o+16383>f?f:o+16383));return 1===e?(r=t[n-1],i+=lookup[r>>2],i+=lookup[r<<4&63],i+="=="):2===e&&(r=(t[n-2]<<8)+t[n-1],i+=lookup[r>>10],i+=lookup[r>>4&63],i+=lookup[r<<2&63],i+="="),u.push(i),u.join("")}function read(t,r,n,e,i){var u,o,f=8*i-e-1,a=(1<<f)-1,s=a>>1,h=-7,l=n?i-1:0,c=n?-1:1,p=t[r+l];for(l+=c,u=p&(1<<-h)-1,p>>=-h,h+=f;h>0;u=256*u+t[r+l],l+=c,h-=8);for(o=u&(1<<-h)-1,u>>=-h,h+=e;h>0;o=256*o+t[r+l],l+=c,h-=8);if(0===u)u=1-s;else{if(u===a)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,e),u-=s}return(p?-1:1)*o*Math.pow(2,u-e)}function write(t,r,n,e,i,u){var o,f,a,s=8*u-i-1,h=(1<<s)-1,l=h>>1,c=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=e?0:u-1,d=e?1:-1,v=r<0||0===r&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(f=isNaN(r)?1:0,o=h):(o=Math.floor(Math.log(r)/Math.LN2),r*(a=Math.pow(2,-o))<1&&(o--,a*=2),(r+=o+l>=1?c/a:c*Math.pow(2,1-l))*a>=2&&(o++,a/=2),o+l>=h?(f=0,o=h):o+l>=1?(f=(r*a-1)*Math.pow(2,i),o+=l):(f=r*Math.pow(2,l-1)*Math.pow(2,i),o=0));i>=8;t[n+p]=255&f,p+=d,f/=256,i-=8);for(o=o<<i|f,s+=i;s>0;t[n+p]=255&o,p+=d,o/=256,s-=8);t[n+p-d]|=128*v}function kMaxLength(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(t,r){if(kMaxLength()<r)throw new RangeError("Invalid typed array length");return Buffer.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(r)).__proto__=Buffer.prototype:(null===t&&(t=new Buffer(r)),t.length=r),t}function Buffer(t,r,n){if(!(Buffer.TYPED_ARRAY_SUPPORT||this instanceof Buffer))return new Buffer(t,r,n);if("number"==typeof t){if("string"==typeof r)throw new Error("If encoding is specified then the first argument must be a string");return allocUnsafe(this,t)}return from(this,t,r,n)}function from(t,r,n,e){if("number"==typeof r)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&r instanceof ArrayBuffer?fromArrayBuffer(t,r,n,e):"string"==typeof r?fromString(t,r,n):fromObject(t,r)}function assertSize(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 alloc(t,r,n,e){return assertSize(r),r<=0?createBuffer(t,r):void 0!==n?"string"==typeof e?createBuffer(t,r).fill(n,e):createBuffer(t,r).fill(n):createBuffer(t,r)}function allocUnsafe(t,r){if(assertSize(r),t=createBuffer(t,r<0?0:0|checked(r)),!Buffer.TYPED_ARRAY_SUPPORT)for(var n=0;n<r;++n)t[n]=0;return t}function fromString(t,r,n){if("string"==typeof n&&""!==n||(n="utf8"),!Buffer.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var e=0|byteLength(r,n),i=(t=createBuffer(t,e)).write(r,n);return i!==e&&(t=t.slice(0,i)),t}function fromArrayLike(t,r){var n=r.length<0?0:0|checked(r.length);t=createBuffer(t,n);for(var e=0;e<n;e+=1)t[e]=255&r[e];return t}function fromArrayBuffer(t,r,n,e){if(r.byteLength,n<0||r.byteLength<n)throw new RangeError("'offset' is out of bounds");if(r.byteLength<n+(e||0))throw new RangeError("'length' is out of bounds");return r=void 0===n&&void 0===e?new Uint8Array(r):void 0===e?new Uint8Array(r,n):new Uint8Array(r,n,e),Buffer.TYPED_ARRAY_SUPPORT?(t=r).__proto__=Buffer.prototype:t=fromArrayLike(t,r),t}function fromObject(t,r){if(internalIsBuffer(r)){var n=0|checked(r.length);return 0===(t=createBuffer(t,n)).length?t:(r.copy(t,0,0,n),t)}if(r){if("undefined"!=typeof ArrayBuffer&&r.buffer instanceof ArrayBuffer||"length"in r)return"number"!=typeof r.length||isnan(r.length)?createBuffer(t,0):fromArrayLike(t,r);if("Buffer"===r.type&&isArray(r.data))return fromArrayLike(t,r.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function checked(t){if(t>=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return 0|t}function SlowBuffer(t){return+t!=t&&(t=0),Buffer.alloc(+t)}function internalIsBuffer(t){return!(null==t||!t._isBuffer)}function byteLength(t,r){if(internalIsBuffer(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 n=t.length;if(0===n)return 0;for(var e=!1;;)switch(r){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return utf8ToBytes(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return base64ToBytes(t).length;default:if(e)return utf8ToBytes(t).length;r=(""+r).toLowerCase(),e=!0}}function slowToString(t,r,n){var e=!1;if((void 0===r||r<0)&&(r=0),r>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,r>>>=0,n<=r)return"";for(t||(t="utf8");;)switch(t){case"hex":return hexSlice(this,r,n);case"utf8":case"utf-8":return utf8Slice(this,r,n);case"ascii":return asciiSlice(this,r,n);case"latin1":case"binary":return latin1Slice(this,r,n);case"base64":return base64Slice(this,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,r,n);default:if(e)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),e=!0}}function swap(t,r,n){var e=t[r];t[r]=t[n],t[n]=e}function bidirectionalIndexOf(t,r,n,e,i){if(0===t.length)return-1;if("string"==typeof n?(e=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof r&&(r=Buffer.from(r,e)),internalIsBuffer(r))return 0===r.length?-1:arrayIndexOf(t,r,n,e,i);if("number"==typeof r)return r&=255,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,r,n):Uint8Array.prototype.lastIndexOf.call(t,r,n):arrayIndexOf(t,[r],n,e,i);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(t,r,n,e,i){function u(t,r){return 1===o?t[r]:t.readUInt16BE(r*o)}var o=1,f=t.length,a=r.length;if(void 0!==e&&("ucs2"===(e=String(e).toLowerCase())||"ucs-2"===e||"utf16le"===e||"utf-16le"===e)){if(t.length<2||r.length<2)return-1;o=2,f/=2,a/=2,n/=2}var s;if(i){var h=-1;for(s=n;s<f;s++)if(u(t,s)===u(r,-1===h?0:s-h)){if(-1===h&&(h=s),s-h+1===a)return h*o}else-1!==h&&(s-=s-h),h=-1}else for(n+a>f&&(n=f-a),s=n;s>=0;s--){for(var l=!0,c=0;c<a;c++)if(u(t,s+c)!==u(r,c)){l=!1;break}if(l)return s}return-1}function hexWrite(t,r,n,e){n=Number(n)||0;var i=t.length-n;e?(e=Number(e))>i&&(e=i):e=i;var u=r.length;if(u%2!=0)throw new TypeError("Invalid hex string");e>u/2&&(e=u/2);for(var o=0;o<e;++o){var f=parseInt(r.substr(2*o,2),16);if(isNaN(f))return o;t[n+o]=f}return o}function utf8Write(t,r,n,e){return blitBuffer(utf8ToBytes(r,t.length-n),t,n,e)}function asciiWrite(t,r,n,e){return blitBuffer(asciiToBytes(r),t,n,e)}function latin1Write(t,r,n,e){return asciiWrite(t,r,n,e)}function base64Write(t,r,n,e){return blitBuffer(base64ToBytes(r),t,n,e)}function ucs2Write(t,r,n,e){return blitBuffer(utf16leToBytes(r,t.length-n),t,n,e)}function base64Slice(t,r,n){return fromByteArray(0===r&&n===t.length?t:t.slice(r,n))}function utf8Slice(t,r,n){n=Math.min(t.length,n);for(var e=[],i=r;i<n;){var u=t[i],o=null,f=u>239?4:u>223?3:u>191?2:1;if(i+f<=n){var a,s,h,l;switch(f){case 1:u<128&&(o=u);break;case 2:128==(192&(a=t[i+1]))&&(l=(31&u)<<6|63&a)>127&&(o=l);break;case 3:a=t[i+1],s=t[i+2],128==(192&a)&&128==(192&s)&&(l=(15&u)<<12|(63&a)<<6|63&s)>2047&&(l<55296||l>57343)&&(o=l);break;case 4:a=t[i+1],s=t[i+2],h=t[i+3],128==(192&a)&&128==(192&s)&&128==(192&h)&&(l=(15&u)<<18|(63&a)<<12|(63&s)<<6|63&h)>65535&&l<1114112&&(o=l)}}null===o?(o=65533,f=1):o>65535&&(o-=65536,e.push(o>>>10&1023|55296),o=56320|1023&o),e.push(o),i+=f}return decodeCodePointsArray(e)}function decodeCodePointsArray(t){var r=t.length;if(r<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,t);for(var n="",e=0;e<r;)n+=String.fromCharCode.apply(String,t.slice(e,e+=MAX_ARGUMENTS_LENGTH));return n}function asciiSlice(t,r,n){var e="";n=Math.min(t.length,n);for(var i=r;i<n;++i)e+=String.fromCharCode(127&t[i]);return e}function latin1Slice(t,r,n){var e="";n=Math.min(t.length,n);for(var i=r;i<n;++i)e+=String.fromCharCode(t[i]);return e}function hexSlice(t,r,n){var e=t.length;(!r||r<0)&&(r=0),(!n||n<0||n>e)&&(n=e);for(var i="",u=r;u<n;++u)i+=toHex(t[u]);return i}function utf16leSlice(t,r,n){for(var e=t.slice(r,n),i="",u=0;u<e.length;u+=2)i+=String.fromCharCode(e[u]+256*e[u+1]);return i}function checkOffset(t,r,n){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+r>n)throw new RangeError("Trying to access beyond buffer length")}function checkInt(t,r,n,e,i,u){if(!internalIsBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(r>i||r<u)throw new RangeError('"value" argument is out of bounds');if(n+e>t.length)throw new RangeError("Index out of range")}function objectWriteUInt16(t,r,n,e){r<0&&(r=65535+r+1);for(var i=0,u=Math.min(t.length-n,2);i<u;++i)t[n+i]=(r&255<<8*(e?i:1-i))>>>8*(e?i:1-i)}function objectWriteUInt32(t,r,n,e){r<0&&(r=4294967295+r+1);for(var i=0,u=Math.min(t.length-n,4);i<u;++i)t[n+i]=r>>>8*(e?i:3-i)&255}function checkIEEE754(t,r,n,e,i,u){if(n+e>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function writeFloat(t,r,n,e,i){return i||checkIEEE754(t,r,n,4,3.4028234663852886e38,-3.4028234663852886e38),write(t,r,n,e,23,4),n+4}function writeDouble(t,r,n,e,i){return i||checkIEEE754(t,r,n,8,1.7976931348623157e308,-1.7976931348623157e308),write(t,r,n,e,52,8),n+8}function base64clean(t){if((t=stringtrim(t).replace(INVALID_BASE64_RE,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}function stringtrim(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function toHex(t){return t<16?"0"+t.toString(16):t.toString(16)}function utf8ToBytes(t,r){r=r||1/0;for(var n,e=t.length,i=null,u=[],o=0;o<e;++o){if((n=t.charCodeAt(o))>55295&&n<57344){if(!i){if(n>56319){(r-=3)>-1&&u.push(239,191,189);continue}if(o+1===e){(r-=3)>-1&&u.push(239,191,189);continue}i=n;continue}if(n<56320){(r-=3)>-1&&u.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(r-=3)>-1&&u.push(239,191,189);if(i=null,n<128){if((r-=1)<0)break;u.push(n)}else if(n<2048){if((r-=2)<0)break;u.push(n>>6|192,63&n|128)}else if(n<65536){if((r-=3)<0)break;u.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((r-=4)<0)break;u.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return u}function asciiToBytes(t){for(var r=[],n=0;n<t.length;++n)r.push(255&t.charCodeAt(n));return r}function utf16leToBytes(t,r){for(var n,e,i,u=[],o=0;o<t.length&&!((r-=2)<0);++o)e=(n=t.charCodeAt(o))>>8,i=n%256,u.push(i),u.push(e);return u}function base64ToBytes(t){return toByteArray(base64clean(t))}function blitBuffer(t,r,n,e){for(var i=0;i<e&&!(i+n>=r.length||i>=t.length);++i)r[i+n]=t[i];return i}function isnan(t){return t!==t}function isBuffer(t){return null!=t&&(!!t._isBuffer||isFastBuffer(t)||isSlowBuffer(t))}function isFastBuffer(t){return!!t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}function isSlowBuffer(t){return"function"==typeof t.readFloatLE&&"function"==typeof t.slice&&isFastBuffer(t.slice(0,0))}var commonjsGlobal="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},global$1="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,inited=!1,toString={}.toString,isArray=Array.isArray||function(t){return"[object Array]"==toString.call(t)},INSPECT_MAX_BYTES=50;Buffer.TYPED_ARRAY_SUPPORT=void 0===global$1.TYPED_ARRAY_SUPPORT||global$1.TYPED_ARRAY_SUPPORT;var _kMaxLength=kMaxLength();Buffer.poolSize=8192,Buffer._augment=function(t){return t.__proto__=Buffer.prototype,t},Buffer.from=function(t,r,n){return from(null,t,r,n)},Buffer.TYPED_ARRAY_SUPPORT&&(Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array),Buffer.alloc=function(t,r,n){return alloc(null,t,r,n)},Buffer.allocUnsafe=function(t){return allocUnsafe(null,t)},Buffer.allocUnsafeSlow=function(t){return allocUnsafe(null,t)},Buffer.isBuffer=isBuffer,Buffer.compare=function(t,r){if(!internalIsBuffer(t)||!internalIsBuffer(r))throw new TypeError("Arguments must be Buffers");if(t===r)return 0;for(var n=t.length,e=r.length,i=0,u=Math.min(n,e);i<u;++i)if(t[i]!==r[i]){n=t[i],e=r[i];break}return n<e?-1:e<n?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(!isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return Buffer.alloc(0);var n;if(void 0===r)for(r=0,n=0;n<t.length;++n)r+=t[n].length;var e=Buffer.allocUnsafe(r),i=0;for(n=0;n<t.length;++n){var u=t[n];if(!internalIsBuffer(u))throw new TypeError('"list" argument must be an Array of Buffers');u.copy(e,i),i+=u.length}return e},Buffer.byteLength=byteLength,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)swap(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)swap(this,r,r+3),swap(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)swap(this,r,r+7),swap(this,r+1,r+6),swap(this,r+2,r+5),swap(this,r+3,r+4);return this},Buffer.prototype.toString=function(){var t=0|this.length;return 0===t?"":0===arguments.length?utf8Slice(this,0,t):slowToString.apply(this,arguments)},Buffer.prototype.equals=function(t){if(!internalIsBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===Buffer.compare(this,t)},Buffer.prototype.inspect=function(){var t="",r=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,n,e,i){if(!internalIsBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===r&&(r=0),void 0===n&&(n=t?t.length:0),void 0===e&&(e=0),void 0===i&&(i=this.length),r<0||n>t.length||e<0||i>this.length)throw new RangeError("out of range index");if(e>=i&&r>=n)return 0;if(e>=i)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,e>>>=0,i>>>=0,this===t)return 0;for(var u=i-e,o=n-r,f=Math.min(u,o),a=this.slice(e,i),s=t.slice(r,n),h=0;h<f;++h)if(a[h]!==s[h]){u=a[h],o=s[h];break}return u<o?-1:o<u?1:0},Buffer.prototype.includes=function(t,r,n){return-1!==this.indexOf(t,r,n)},Buffer.prototype.indexOf=function(t,r,n){return bidirectionalIndexOf(this,t,r,n,!0)},Buffer.prototype.lastIndexOf=function(t,r,n){return bidirectionalIndexOf(this,t,r,n,!1)},Buffer.prototype.write=function(t,r,n,e){if(void 0===r)e="utf8",n=this.length,r=0;else if(void 0===n&&"string"==typeof r)e=r,n=this.length,r=0;else{if(!isFinite(r))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");r|=0,isFinite(n)?(n|=0,void 0===e&&(e="utf8")):(e=n,n=void 0)}var i=this.length-r;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");e||(e="utf8");for(var u=!1;;)switch(e){case"hex":return hexWrite(this,t,r,n);case"utf8":case"utf-8":return utf8Write(this,t,r,n);case"ascii":return asciiWrite(this,t,r,n);case"latin1":case"binary":return latin1Write(this,t,r,n);case"base64":return base64Write(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,t,r,n);default:if(u)throw new TypeError("Unknown encoding: "+e);e=(""+e).toLowerCase(),u=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;Buffer.prototype.slice=function(t,r){var n=this.length;t=~~t,r=void 0===r?n:~~r,t<0?(t+=n)<0&&(t=0):t>n&&(t=n),r<0?(r+=n)<0&&(r=0):r>n&&(r=n),r<t&&(r=t);var e;if(Buffer.TYPED_ARRAY_SUPPORT)(e=this.subarray(t,r)).__proto__=Buffer.prototype;else{var i=r-t;e=new Buffer(i,void 0);for(var u=0;u<i;++u)e[u]=this[u+t]}return e},Buffer.prototype.readUIntLE=function(t,r,n){t|=0,r|=0,n||checkOffset(t,r,this.length);for(var e=this[t],i=1,u=0;++u<r&&(i*=256);)e+=this[t+u]*i;return e},Buffer.prototype.readUIntBE=function(t,r,n){t|=0,r|=0,n||checkOffset(t,r,this.length);for(var e=this[t+--r],i=1;r>0&&(i*=256);)e+=this[t+--r]*i;return e},Buffer.prototype.readUInt8=function(t,r){return r||checkOffset(t,1,this.length),this[t]},Buffer.prototype.readUInt16LE=function(t,r){return r||checkOffset(t,2,this.length),this[t]|this[t+1]<<8},Buffer.prototype.readUInt16BE=function(t,r){return r||checkOffset(t,2,this.length),this[t]<<8|this[t+1]},Buffer.prototype.readUInt32LE=function(t,r){return r||checkOffset(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||checkOffset(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},Buffer.prototype.readIntLE=function(t,r,n){t|=0,r|=0,n||checkOffset(t,r,this.length);for(var e=this[t],i=1,u=0;++u<r&&(i*=256);)e+=this[t+u]*i;return i*=128,e>=i&&(e-=Math.pow(2,8*r)),e},Buffer.prototype.readIntBE=function(t,r,n){t|=0,r|=0,n||checkOffset(t,r,this.length);for(var e=r,i=1,u=this[t+--e];e>0&&(i*=256);)u+=this[t+--e]*i;return i*=128,u>=i&&(u-=Math.pow(2,8*r)),u},Buffer.prototype.readInt8=function(t,r){return r||checkOffset(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},Buffer.prototype.readInt16LE=function(t,r){r||checkOffset(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},Buffer.prototype.readInt16BE=function(t,r){r||checkOffset(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},Buffer.prototype.readInt32LE=function(t,r){return r||checkOffset(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||checkOffset(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||checkOffset(t,4,this.length),read(this,t,!0,23,4)},Buffer.prototype.readFloatBE=function(t,r){return r||checkOffset(t,4,this.length),read(this,t,!1,23,4)},Buffer.prototype.readDoubleLE=function(t,r){return r||checkOffset(t,8,this.length),read(this,t,!0,52,8)},Buffer.prototype.readDoubleBE=function(t,r){return r||checkOffset(t,8,this.length),read(this,t,!1,52,8)},Buffer.prototype.writeUIntLE=function(t,r,n,e){t=+t,r|=0,n|=0,e||checkInt(this,t,r,n,Math.pow(2,8*n)-1,0);var i=1,u=0;for(this[r]=255&t;++u<n&&(i*=256);)this[r+u]=t/i&255;return r+n},Buffer.prototype.writeUIntBE=function(t,r,n,e){t=+t,r|=0,n|=0,e||checkInt(this,t,r,n,Math.pow(2,8*n)-1,0);var i=n-1,u=1;for(this[r+i]=255&t;--i>=0&&(u*=256);)this[r+i]=t/u&255;return r+n},Buffer.prototype.writeUInt8=function(t,r,n){return t=+t,r|=0,n||checkInt(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,n){return t=+t,r|=0,n||checkInt(this,t,r,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):objectWriteUInt16(this,t,r,!0),r+2},Buffer.prototype.writeUInt16BE=function(t,r,n){return t=+t,r|=0,n||checkInt(this,t,r,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):objectWriteUInt16(this,t,r,!1),r+2},Buffer.prototype.writeUInt32LE=function(t,r,n){return t=+t,r|=0,n||checkInt(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):objectWriteUInt32(this,t,r,!0),r+4},Buffer.prototype.writeUInt32BE=function(t,r,n){return t=+t,r|=0,n||checkInt(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):objectWriteUInt32(this,t,r,!1),r+4},Buffer.prototype.writeIntLE=function(t,r,n,e){if(t=+t,r|=0,!e){var i=Math.pow(2,8*n-1);checkInt(this,t,r,n,i-1,-i)}var u=0,o=1,f=0;for(this[r]=255&t;++u<n&&(o*=256);)t<0&&0===f&&0!==this[r+u-1]&&(f=1),this[r+u]=(t/o>>0)-f&255;return r+n},Buffer.prototype.writeIntBE=function(t,r,n,e){if(t=+t,r|=0,!e){var i=Math.pow(2,8*n-1);checkInt(this,t,r,n,i-1,-i)}var u=n-1,o=1,f=0;for(this[r+u]=255&t;--u>=0&&(o*=256);)t<0&&0===f&&0!==this[r+u+1]&&(f=1),this[r+u]=(t/o>>0)-f&255;return r+n},Buffer.prototype.writeInt8=function(t,r,n){return t=+t,r|=0,n||checkInt(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,n){return t=+t,r|=0,n||checkInt(this,t,r,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=255&t,this[r+1]=t>>>8):objectWriteUInt16(this,t,r,!0),r+2},Buffer.prototype.writeInt16BE=function(t,r,n){return t=+t,r|=0,n||checkInt(this,t,r,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[r]=t>>>8,this[r+1]=255&t):objectWriteUInt16(this,t,r,!1),r+2},Buffer.prototype.writeInt32LE=function(t,r,n){return t=+t,r|=0,n||checkInt(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):objectWriteUInt32(this,t,r,!0),r+4},Buffer.prototype.writeInt32BE=function(t,r,n){return t=+t,r|=0,n||checkInt(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):objectWriteUInt32(this,t,r,!1),r+4},Buffer.prototype.writeFloatLE=function(t,r,n){return writeFloat(this,t,r,!0,n)},Buffer.prototype.writeFloatBE=function(t,r,n){return writeFloat(this,t,r,!1,n)},Buffer.prototype.writeDoubleLE=function(t,r,n){return writeDouble(this,t,r,!0,n)},Buffer.prototype.writeDoubleBE=function(t,r,n){return writeDouble(this,t,r,!1,n)},Buffer.prototype.copy=function(t,r,n,e){if(n||(n=0),e||0===e||(e=this.length),r>=t.length&&(r=t.length),r||(r=0),e>0&&e<n&&(e=n),e===n)return 0;if(0===t.length||0===this.length)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(e<0)throw new RangeError("sourceEnd out of bounds");e>this.length&&(e=this.length),t.length-r<e-n&&(e=t.length-r+n);var i,u=e-n;if(this===t&&n<r&&r<e)for(i=u-1;i>=0;--i)t[i+r]=this[i+n];else if(u<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(i=0;i<u;++i)t[i+r]=this[i+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+u),r);return u},Buffer.prototype.fill=function(t,r,n,e){if("string"==typeof t){if("string"==typeof r?(e=r,r=0,n=this.length):"string"==typeof n&&(e=n,n=this.length),1===t.length){var i=t.charCodeAt(0);i<256&&(t=i)}if(void 0!==e&&"string"!=typeof e)throw new TypeError("encoding must be a string");if("string"==typeof e&&!Buffer.isEncoding(e))throw new TypeError("Unknown encoding: "+e)}else"number"==typeof t&&(t&=255);if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0);var u;if("number"==typeof t)for(u=r;u<n;++u)this[u]=t;else{var o=internalIsBuffer(t)?t:utf8ToBytes(new Buffer(t,e).toString()),f=o.length;for(u=0;u<n-r;++u)this[u+r]=o[u%f]}return this};var INVALID_BASE64_RE=/[^+\/0-9A-Za-z-_]/g,bufferEs6=Object.freeze({INSPECT_MAX_BYTES:INSPECT_MAX_BYTES,kMaxLength:_kMaxLength,Buffer:Buffer,SlowBuffer:SlowBuffer,isBuffer:isBuffer}),bn$1=createCommonjsModule(function(t){!function(t,r){"use strict";function n(t,r){if(!t)throw new Error(r||"Assertion failed")}function e(t,r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}function i(t,r,n){if(i.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==r&&"be"!==r||(n=r,r=10),this._init(t||0,r||10,n||"be"))}function u(t,r,n){for(var e=0,i=Math.min(t.length,n),u=r;u<i;u++){var o=t.charCodeAt(u)-48;e<<=4,e|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return e}function o(t,r,n,e){for(var i=0,u=Math.min(t.length,n),o=r;o<u;o++){var f=t.charCodeAt(o)-48;i*=e,i+=f>=49?f-49+10:f>=17?f-17+10:f}return i}function f(t){for(var r=new Array(t.bitLength()),n=0;n<r.length;n++){var e=n/26|0,i=n%26;r[n]=(t.words[e]&1<<i)>>>i}return r}function a(t,r,n){n.negative=r.negative^t.negative;var e=t.length+r.length|0;n.length=e,e=e-1|0;var i=0|t.words[0],u=0|r.words[0],o=i*u,f=67108863&o,a=o/67108864|0;n.words[0]=f;for(var s=1;s<e;s++){for(var h=a>>>26,l=67108863&a,c=Math.min(s,r.length-1),p=Math.max(0,s-t.length+1);p<=c;p++){var d=s-p|0;h+=(o=(i=0|t.words[d])*(u=0|r.words[p])+l)/67108864|0,l=67108863&o}n.words[s]=0|l,a=0|h}return 0!==a?n.words[s]=0|a:n.length--,n.strip()}function s(t,r,n){n.negative=r.negative^t.negative,n.length=t.length+r.length;for(var e=0,i=0,u=0;u<n.length-1;u++){var o=i;i=0;for(var f=67108863&e,a=Math.min(u,r.length-1),s=Math.max(0,u-t.length+1);s<=a;s++){var h=u-s,l=(0|t.words[h])*(0|r.words[s]),c=67108863&l;f=67108863&(c=c+f|0),i+=(o=(o=o+(l/67108864|0)|0)+(c>>>26)|0)>>>26,o&=67108863}n.words[u]=f,e=o,o=i}return 0!==e?n.words[u]=e:n.length--,n.strip()}function h(t,r,n){return(new l).mulp(t,r,n)}function l(t,r){this.x=t,this.y=r}function c(t,r){this.name=t,this.p=new i(r,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function p(){c.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function d(){c.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function v(){c.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function g(){c.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function m(t){if("string"==typeof t){var r=i._prime(t);this.m=r.p,this.prime=r}else n(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function y(t){m.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}"object"==typeof t?t.exports=i:r.BN=i,i.BN=i,i.wordSize=26;var _;try{_=bufferEs6.Buffer}catch(t){}i.isBN=function(t){return t instanceof i||null!==t&&"object"==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,r){return t.cmp(r)>0?t:r},i.min=function(t,r){return t.cmp(r)<0?t:r},i.prototype._init=function(t,r,e){if("number"==typeof t)return this._initNumber(t,r,e);if("object"==typeof t)return this._initArray(t,r,e);"hex"===r&&(r=16),n(r===(0|r)&&r>=2&&r<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===r?this._parseHex(t,i):this._parseBase(t,r,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===e&&this._initArray(this.toArray(),r,e)},i.prototype._initNumber=function(t,r,e){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(n(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===e&&this._initArray(this.toArray(),r,e)},i.prototype._initArray=function(t,r,e){if(n("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i<this.length;i++)this.words[i]=0;var u,o,f=0;if("be"===e)for(i=t.length-1,u=0;i>=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[u]|=o<<f&67108863,this.words[u+1]=o>>>26-f&67108863,(f+=24)>=26&&(f-=26,u++);else if("le"===e)for(i=0,u=0;i<t.length;i+=3)o=t[i]|t[i+1]<<8|t[i+2]<<16,this.words[u]|=o<<f&67108863,this.words[u+1]=o>>>26-f&67108863,(f+=24)>=26&&(f-=26,u++);return this.strip()},i.prototype._parseHex=function(t,r){this.length=Math.ceil((t.length-r)/6),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var e,i,o=0;for(n=t.length-6,e=0;n>=r;n-=6)i=u(t,n,n+6),this.words[e]|=i<<o&67108863,this.words[e+1]|=i>>>26-o&4194303,(o+=24)>=26&&(o-=26,e++);n+6!==r&&(i=u(t,r,n+6),this.words[e]|=i<<o&67108863,this.words[e+1]|=i>>>26-o&4194303),this.strip()},i.prototype._parseBase=function(t,r,n){this.words=[0],this.length=1;for(var e=0,i=1;i<=67108863;i*=r)e++;e--,i=i/r|0;for(var u=t.length-n,f=u%e,a=Math.min(u,u-f)+n,s=0,h=n;h<a;h+=e)s=o(t,h,h+e,r),this.imuln(i),this.words[0]+s<67108864?this.words[0]+=s:this._iaddn(s);if(0!==f){var l=1;for(s=o(t,h,t.length,r),h=0;h<f;h++)l*=r;this.imuln(l),this.words[0]+s<67108864?this.words[0]+=s:this._iaddn(s)}},i.prototype.copy=function(t){t.words=new Array(this.length);for(var r=0;r<this.length;r++)t.words[r]=this.words[r];t.length=this.length,t.negative=this.negative,t.red=this.red},i.prototype.clone=function(){var t=new i(null);return this.copy(t),t},i.prototype._expand=function(t){for(;this.length<t;)this.words[this.length++]=0;return this},i.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var w=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],M=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],b=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(t,r){t=t||10,r=0|r||1;var e;if(16===t||"hex"===t){e="";for(var i=0,u=0,o=0;o<this.length;o++){var f=this.words[o],a=(16777215&(f<<i|u)).toString(16);e=0!==(u=f>>>24-i&16777215)||o!==this.length-1?w[6-a.length]+a+e:a+e,(i+=2)>=26&&(i-=26,o--)}for(0!==u&&(e=u.toString(16)+e);e.length%r!=0;)e="0"+e;return 0!==this.negative&&(e="-"+e),e}if(t===(0|t)&&t>=2&&t<=36){var s=M[t],h=b[t];e="";var l=this.clone();for(l.negative=0;!l.isZero();){var c=l.modn(h).toString(t);e=(l=l.idivn(h)).isZero()?c+e:w[s-c.length]+c+e}for(this.isZero()&&(e="0"+e);e.length%r!=0;)e="0"+e;return 0!==this.negative&&(e="-"+e),e}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,r){return n(void 0!==_),this.toArrayLike(_,t,r)},i.prototype.toArray=function(t,r){return this.toArrayLike(Array,t,r)},i.prototype.toArrayLike=function(t,r,e){var i=this.byteLength(),u=e||Math.max(1,i);n(i<=u,"byte array longer than desired length"),n(u>0,"Requested array length <= 0"),this.strip();var o,f,a="le"===r,s=new t(u),h=this.clone();if(a){for(f=0;!h.isZero();f++)o=h.andln(255),h.iushrn(8),s[f]=o;for(;f<u;f++)s[f]=0}else{for(f=0;f<u-i;f++)s[f]=0;for(f=0;!h.isZero();f++)o=h.andln(255),h.iushrn(8),s[u-f-1]=o}return s},Math.clz32?i.prototype._countBits=function(t){return 32-Math.clz32(t)}:i.prototype._countBits=function(t){var r=t,n=0;return r>=4096&&(n+=13,r>>>=13),r>=64&&(n+=7,r>>>=7),r>=8&&(n+=4,r>>>=4),r>=2&&(n+=2,r>>>=2),n+r},i.prototype._zeroBits=function(t){if(0===t)return 26;var r=t,n=0;return 0==(8191&r)&&(n+=13,r>>>=13),0==(127&r)&&(n+=7,r>>>=7),0==(15&r)&&(n+=4,r>>>=4),0==(3&r)&&(n+=2,r>>>=2),0==(1&r)&&n++,n},i.prototype.bitLength=function(){var t=this.words[this.length-1],r=this._countBits(t);return 26*(this.length-1)+r},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,r=0;r<this.length;r++){var n=this._zeroBits(this.words[r]);if(t+=n,26!==n)break}return t},i.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},i.prototype.toTwos=function(t){return 0!==this.negative?this.abs().inotn(t).iaddn(1):this.clone()},i.prototype.fromTwos=function(t){return this.testn(t-1)?this.notn(t).iaddn(1).ineg():this.clone()},i.prototype.isNeg=function(){return 0!==this.negative},i.prototype.neg=function(){return this.clone().ineg()},i.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},i.prototype.iuor=function(t){for(;this.length<t.length;)this.words[this.length++]=0;for(var r=0;r<t.length;r++)this.words[r]=this.words[r]|t.words[r];return this.strip()},i.prototype.ior=function(t){return n(0==(this.negative|t.negative)),this.iuor(t)},i.prototype.or=function(t){return this.length>t.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.prototype.iuand=function(t){var r;r=this.length>t.length?t:this;for(var n=0;n<r.length;n++)this.words[n]=this.words[n]&t.words[n];return this.length=r.length,this.strip()},i.prototype.iand=function(t){return n(0==(this.negative|t.negative)),this.iuand(t)},i.prototype.and=function(t){return this.length>t.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.prototype.iuxor=function(t){var r,n;this.length>t.length?(r=this,n=t):(r=t,n=this);for(var e=0;e<n.length;e++)this.words[e]=r.words[e]^n.words[e];if(this!==r)for(;e<r.length;e++)this.words[e]=r.words[e];return this.length=r.length,this.strip()},i.prototype.ixor=function(t){return n(0==(this.negative|t.negative)),this.iuxor(t)},i.prototype.xor=function(t){return this.length>t.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.prototype.inotn=function(t){n("number"==typeof t&&t>=0);var r=0|Math.ceil(t/26),e=t%26;this._expand(r),e>0&&r--;for(var i=0;i<r;i++)this.words[i]=67108863&~this.words[i];return e>0&&(this.words[i]=~this.words[i]&67108863>>26-e),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,r){n("number"==typeof t&&t>=0);var e=t/26|0,i=t%26;return this._expand(e+1),this.words[e]=r?this.words[e]|1<<i:this.words[e]&~(1<<i),this.strip()},i.prototype.iadd=function(t){var r;if(0!==this.negative&&0===t.negative)return this.negative=0,r=this.isub(t),this.negative^=1,this._normSign();if(0===this.negative&&0!==t.negative)return t.negative=0,r=this.isub(t),t.negative=1,r._normSign();var n,e;this.length>t.length?(n=this,e=t):(n=t,e=this);for(var i=0,u=0;u<e.length;u++)r=(0|n.words[u])+(0|e.words[u])+i,this.words[u]=67108863&r,i=r>>>26;for(;0!==i&&u<n.length;u++)r=(0|n.words[u])+i,this.words[u]=67108863&r,i=r>>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;u<n.length;u++)this.words[u]=n.words[u];return this},i.prototype.add=function(t){var r;return 0!==t.negative&&0===this.negative?(t.negative=0,r=this.sub(t),t.negative^=1,r):0===t.negative&&0!==this.negative?(this.negative=0,r=t.sub(this),this.negative=1,r):this.length>t.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var r=this.iadd(t);return t.negative=1,r._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n=this.cmp(t);if(0===n)return this.negative=0,this.length=1,this.words[0]=0,this;var e,i;n>0?(e=this,i=t):(e=t,i=this);for(var u=0,o=0;o<i.length;o++)u=(r=(0|e.words[o])-(0|i.words[o])+u)>>26,this.words[o]=67108863&r;for(;0!==u&&o<e.length;o++)u=(r=(0|e.words[o])+u)>>26,this.words[o]=67108863&r;if(0===u&&o<e.length&&e!==this)for(;o<e.length;o++)this.words[o]=e.words[o];return this.length=Math.max(this.length,o),e!==this&&(this.negative=1),this.strip()},i.prototype.sub=function(t){return this.clone().isub(t)};var B=function(t,r,n){var e,i,u,o=t.words,f=r.words,a=n.words,s=0,h=0|o[0],l=8191&h,c=h>>>13,p=0|o[1],d=8191&p,v=p>>>13,g=0|o[2],m=8191&g,y=g>>>13,_=0|o[3],w=8191&_,M=_>>>13,b=0|o[4],B=8191&b,A=b>>>13,x=0|o[5],E=8191&x,k=x>>>13,S=0|o[6],R=8191&S,I=S>>>13,T=0|o[7],O=8191&T,j=T>>>13,L=0|o[8],U=8191&L,P=L>>>13,C=0|o[9],N=8191&C,z=C>>>13,$=0|f[0],W=8191&$,D=$>>>13,Y=0|f[1],q=8191&Y,F=Y>>>13,Z=0|f[2],G=8191&Z,V=Z>>>13,K=0|f[3],H=8191&K,X=K>>>13,J=0|f[4],Q=8191&J,tt=J>>>13,rt=0|f[5],nt=8191&rt,et=rt>>>13,it=0|f[6],ut=8191&it,ot=it>>>13,ft=0|f[7],at=8191&ft,st=ft>>>13,ht=0|f[8],lt=8191&ht,ct=ht>>>13,pt=0|f[9],dt=8191&pt,vt=pt>>>13;n.negative=t.negative^r.negative,n.length=19;var gt=(s+(e=Math.imul(l,W))|0)+((8191&(i=(i=Math.imul(l,D))+Math.imul(c,W)|0))<<13)|0;s=((u=Math.imul(c,D))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,e=Math.imul(d,W),i=(i=Math.imul(d,D))+Math.imul(v,W)|0,u=Math.imul(v,D);var mt=(s+(e=e+Math.imul(l,q)|0)|0)+((8191&(i=(i=i+Math.imul(l,F)|0)+Math.imul(c,q)|0))<<13)|0;s=((u=u+Math.imul(c,F)|0)+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,e=Math.imul(m,W),i=(i=Math.imul(m,D))+Math.imul(y,W)|0,u=Math.imul(y,D),e=e+Math.imul(d,q)|0,i=(i=i+Math.imul(d,F)|0)+Math.imul(v,q)|0,u=u+Math.imul(v,F)|0;var yt=(s+(e=e+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,V)|0)+Math.imul(c,G)|0))<<13)|0;s=((u=u+Math.imul(c,V)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,e=Math.imul(w,W),i=(i=Math.imul(w,D))+Math.imul(M,W)|0,u=Math.imul(M,D),e=e+Math.imul(m,q)|0,i=(i=i+Math.imul(m,F)|0)+Math.imul(y,q)|0,u=u+Math.imul(y,F)|0,e=e+Math.imul(d,G)|0,i=(i=i+Math.imul(d,V)|0)+Math.imul(v,G)|0,u=u+Math.imul(v,V)|0;var _t=(s+(e=e+Math.imul(l,H)|0)|0)+((8191&(i=(i=i+Math.imul(l,X)|0)+Math.imul(c,H)|0))<<13)|0;s=((u=u+Math.imul(c,X)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,e=Math.imul(B,W),i=(i=Math.imul(B,D))+Math.imul(A,W)|0,u=Math.imul(A,D),e=e+Math.imul(w,q)|0,i=(i=i+Math.imul(w,F)|0)+Math.imul(M,q)|0,u=u+Math.imul(M,F)|0,e=e+Math.imul(m,G)|0,i=(i=i+Math.imul(m,V)|0)+Math.imul(y,G)|0,u=u+Math.imul(y,V)|0,e=e+Math.imul(d,H)|0,i=(i=i+Math.imul(d,X)|0)+Math.imul(v,H)|0,u=u+Math.imul(v,X)|0;var wt=(s+(e=e+Math.imul(l,Q)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(c,Q)|0))<<13)|0;s=((u=u+Math.imul(c,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,e=Math.imul(E,W),i=(i=Math.imul(E,D))+Math.imul(k,W)|0,u=Math.imul(k,D),e=e+Math.imul(B,q)|0,i=(i=i+Math.imul(B,F)|0)+Math.imul(A,q)|0,u=u+Math.imul(A,F)|0,e=e+Math.imul(w,G)|0,i=(i=i+Math.imul(w,V)|0)+Math.imul(M,G)|0,u=u+Math.imul(M,V)|0,e=e+Math.imul(m,H)|0,i=(i=i+Math.imul(m,X)|0)+Math.imul(y,H)|0,u=u+Math.imul(y,X)|0,e=e+Math.imul(d,Q)|0,i=(i=i+Math.imul(d,tt)|0)+Math.imul(v,Q)|0,u=u+Math.imul(v,tt)|0;var Mt=(s+(e=e+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,et)|0)+Math.imul(c,nt)|0))<<13)|0;s=((u=u+Math.imul(c,et)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,e=Math.imul(R,W),i=(i=Math.imul(R,D))+Math.imul(I,W)|0,u=Math.imul(I,D),e=e+Math.imul(E,q)|0,i=(i=i+Math.imul(E,F)|0)+Math.imul(k,q)|0,u=u+Math.imul(k,F)|0,e=e+Math.imul(B,G)|0,i=(i=i+Math.imul(B,V)|0)+Math.imul(A,G)|0,u=u+Math.imul(A,V)|0,e=e+Math.imul(w,H)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(M,H)|0,u=u+Math.imul(M,X)|0,e=e+Math.imul(m,Q)|0,i=(i=i+Math.imul(m,tt)|0)+Math.imul(y,Q)|0,u=u+Math.imul(y,tt)|0,e=e+Math.imul(d,nt)|0,i=(i=i+Math.imul(d,et)|0)+Math.imul(v,nt)|0,u=u+Math.imul(v,et)|0;var bt=(s+(e=e+Math.imul(l,ut)|0)|0)+((8191&(i=(i=i+Math.imul(l,ot)|0)+Math.imul(c,ut)|0))<<13)|0;s=((u=u+Math.imul(c,ot)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,e=Math.imul(O,W),i=(i=Math.imul(O,D))+Math.imul(j,W)|0,u=Math.imul(j,D),e=e+Math.imul(R,q)|0,i=(i=i+Math.imul(R,F)|0)+Math.imul(I,q)|0,u=u+Math.imul(I,F)|0,e=e+Math.imul(E,G)|0,i=(i=i+Math.imul(E,V)|0)+Math.imul(k,G)|0,u=u+Math.imul(k,V)|0,e=e+Math.imul(B,H)|0,i=(i=i+Math.imul(B,X)|0)+Math.imul(A,H)|0,u=u+Math.imul(A,X)|0,e=e+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(M,Q)|0,u=u+Math.imul(M,tt)|0,e=e+Math.imul(m,nt)|0,i=(i=i+Math.imul(m,et)|0)+Math.imul(y,nt)|0,u=u+Math.imul(y,et)|0,e=e+Math.imul(d,ut)|0,i=(i=i+Math.imul(d,ot)|0)+Math.imul(v,ut)|0,u=u+Math.imul(v,ot)|0;var Bt=(s+(e=e+Math.imul(l,at)|0)|0)+((8191&(i=(i=i+Math.imul(l,st)|0)+Math.imul(c,at)|0))<<13)|0;s=((u=u+Math.imul(c,st)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,e=Math.imul(U,W),i=(i=Math.imul(U,D))+Math.imul(P,W)|0,u=Math.imul(P,D),e=e+Math.imul(O,q)|0,i=(i=i+Math.imul(O,F)|0)+Math.imul(j,q)|0,u=u+Math.imul(j,F)|0,e=e+Math.imul(R,G)|0,i=(i=i+Math.imul(R,V)|0)+Math.imul(I,G)|0,u=u+Math.imul(I,V)|0,e=e+Math.imul(E,H)|0,i=(i=i+Math.imul(E,X)|0)+Math.imul(k,H)|0,u=u+Math.imul(k,X)|0,e=e+Math.imul(B,Q)|0,i=(i=i+Math.imul(B,tt)|0)+Math.imul(A,Q)|0,u=u+Math.imul(A,tt)|0,e=e+Math.imul(w,nt)|0,i=(i=i+Math.imul(w,et)|0)+Math.imul(M,nt)|0,u=u+Math.imul(M,et)|0,e=e+Math.imul(m,ut)|0,i=(i=i+Math.imul(m,ot)|0)+Math.imul(y,ut)|0,u=u+Math.imul(y,ot)|0,e=e+Math.imul(d,at)|0,i=(i=i+Math.imul(d,st)|0)+Math.imul(v,at)|0,u=u+Math.imul(v,st)|0;var At=(s+(e=e+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(c,lt)|0))<<13)|0;s=((u=u+Math.imul(c,ct)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,e=Math.imul(N,W),i=(i=Math.imul(N,D))+Math.imul(z,W)|0,u=Math.imul(z,D),e=e+Math.imul(U,q)|0,i=(i=i+Math.imul(U,F)|0)+Math.imul(P,q)|0,u=u+Math.imul(P,F)|0,e=e+Math.imul(O,G)|0,i=(i=i+Math.imul(O,V)|0)+Math.imul(j,G)|0,u=u+Math.imul(j,V)|0,e=e+Math.imul(R,H)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,H)|0,u=u+Math.imul(I,X)|0,e=e+Math.imul(E,Q)|0,i=(i=i+Math.imul(E,tt)|0)+Math.imul(k,Q)|0,u=u+Math.imul(k,tt)|0,e=e+Math.imul(B,nt)|0,i=(i=i+Math.imul(B,et)|0)+Math.imul(A,nt)|0,u=u+Math.imul(A,et)|0,e=e+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ot)|0)+Math.imul(M,ut)|0,u=u+Math.imul(M,ot)|0,e=e+Math.imul(m,at)|0,i=(i=i+Math.imul(m,st)|0)+Math.imul(y,at)|0,u=u+Math.imul(y,st)|0,e=e+Math.imul(d,lt)|0,i=(i=i+Math.imul(d,ct)|0)+Math.imul(v,lt)|0,u=u+Math.imul(v,ct)|0;var xt=(s+(e=e+Math.imul(l,dt)|0)|0)+((8191&(i=(i=i+Math.imul(l,vt)|0)+Math.imul(c,dt)|0))<<13)|0;s=((u=u+Math.imul(c,vt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,e=Math.imul(N,q),i=(i=Math.imul(N,F))+Math.imul(z,q)|0,u=Math.imul(z,F),e=e+Math.imul(U,G)|0,i=(i=i+Math.imul(U,V)|0)+Math.imul(P,G)|0,u=u+Math.imul(P,V)|0,e=e+Math.imul(O,H)|0,i=(i=i+Math.imul(O,X)|0)+Math.imul(j,H)|0,u=u+Math.imul(j,X)|0,e=e+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,u=u+Math.imul(I,tt)|0,e=e+Math.imul(E,nt)|0,i=(i=i+Math.imul(E,et)|0)+Math.imul(k,nt)|0,u=u+Math.imul(k,et)|0,e=e+Math.imul(B,ut)|0,i=(i=i+Math.imul(B,ot)|0)+Math.imul(A,ut)|0,u=u+Math.imul(A,ot)|0,e=e+Math.imul(w,at)|0,i=(i=i+Math.imul(w,st)|0)+Math.imul(M,at)|0,u=u+Math.imul(M,st)|0,e=e+Math.imul(m,lt)|0,i=(i=i+Math.imul(m,ct)|0)+Math.imul(y,lt)|0,u=u+Math.imul(y,ct)|0;var Et=(s+(e=e+Math.imul(d,dt)|0)|0)+((8191&(i=(i=i+Math.imul(d,vt)|0)+Math.imul(v,dt)|0))<<13)|0;s=((u=u+Math.imul(v,vt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,e=Math.imul(N,G),i=(i=Math.imul(N,V))+Math.imul(z,G)|0,u=Math.imul(z,V),e=e+Math.imul(U,H)|0,i=(i=i+Math.imul(U,X)|0)+Math.imul(P,H)|0,u=u+Math.imul(P,X)|0,e=e+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(j,Q)|0,u=u+Math.imul(j,tt)|0,e=e+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,et)|0)+Math.imul(I,nt)|0,u=u+Math.imul(I,et)|0,e=e+Math.imul(E,ut)|0,i=(i=i+Math.imul(E,ot)|0)+Math.imul(k,ut)|0,u=u+Math.imul(k,ot)|0,e=e+Math.imul(B,at)|0,i=(i=i+Math.imul(B,st)|0)+Math.imul(A,at)|0,u=u+Math.imul(A,st)|0,e=e+Math.imul(w,lt)|0,i=(i=i+Math.imul(w,ct)|0)+Math.imul(M,lt)|0,u=u+Math.imul(M,ct)|0;var kt=(s+(e=e+Math.imul(m,dt)|0)|0)+((8191&(i=(i=i+Math.imul(m,vt)|0)+Math.imul(y,dt)|0))<<13)|0;s=((u=u+Math.imul(y,vt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,e=Math.imul(N,H),i=(i=Math.imul(N,X))+Math.imul(z,H)|0,u=Math.imul(z,X),e=e+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(P,Q)|0,u=u+Math.imul(P,tt)|0,e=e+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,et)|0)+Math.imul(j,nt)|0,u=u+Math.imul(j,et)|0,e=e+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ot)|0)+Math.imul(I,ut)|0,u=u+Math.imul(I,ot)|0,e=e+Math.imul(E,at)|0,i=(i=i+Math.imul(E,st)|0)+Math.imul(k,at)|0,u=u+Math.imul(k,st)|0,e=e+Math.imul(B,lt)|0,i=(i=i+Math.imul(B,ct)|0)+Math.imul(A,lt)|0,u=u+Math.imul(A,ct)|0;var St=(s+(e=e+Math.imul(w,dt)|0)|0)+((8191&(i=(i=i+Math.imul(w,vt)|0)+Math.imul(M,dt)|0))<<13)|0;s=((u=u+Math.imul(M,vt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,e=Math.imul(N,Q),i=(i=Math.imul(N,tt))+Math.imul(z,Q)|0,u=Math.imul(z,tt),e=e+Math.imul(U,nt)|0,i=(i=i+Math.imul(U,et)|0)+Math.imul(P,nt)|0,u=u+Math.imul(P,et)|0,e=e+Math.imul(O,ut)|0,i=(i=i+Math.imul(O,ot)|0)+Math.imul(j,ut)|0,u=u+Math.imul(j,ot)|0,e=e+Math.imul(R,at)|0,i=(i=i+Math.imul(R,st)|0)+Math.imul(I,at)|0,u=u+Math.imul(I,st)|0,e=e+Math.imul(E,lt)|0,i=(i=i+Math.imul(E,ct)|0)+Math.imul(k,lt)|0,u=u+Math.imul(k,ct)|0;var Rt=(s+(e=e+Math.imul(B,dt)|0)|0)+((8191&(i=(i=i+Math.imul(B,vt)|0)+Math.imul(A,dt)|0))<<13)|0;s=((u=u+Math.imul(A,vt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,e=Math.imul(N,nt),i=(i=Math.imul(N,et))+Math.imul(z,nt)|0,u=Math.imul(z,et),e=e+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ot)|0)+Math.imul(P,ut)|0,u=u+Math.imul(P,ot)|0,e=e+Math.imul(O,at)|0,i=(i=i+Math.imul(O,st)|0)+Math.imul(j,at)|0,u=u+Math.imul(j,st)|0,e=e+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(I,lt)|0,u=u+Math.imul(I,ct)|0;var It=(s+(e=e+Math.imul(E,dt)|0)|0)+((8191&(i=(i=i+Math.imul(E,vt)|0)+Math.imul(k,dt)|0))<<13)|0;s=((u=u+Math.imul(k,vt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,e=Math.imul(N,ut),i=(i=Math.imul(N,ot))+Math.imul(z,ut)|0,u=Math.imul(z,ot),e=e+Math.imul(U,at)|0,i=(i=i+Math.imul(U,st)|0)+Math.imul(P,at)|0,u=u+Math.imul(P,st)|0,e=e+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(j,lt)|0,u=u+Math.imul(j,ct)|0;var Tt=(s+(e=e+Math.imul(R,dt)|0)|0)+((8191&(i=(i=i+Math.imul(R,vt)|0)+Math.imul(I,dt)|0))<<13)|0;s=((u=u+Math.imul(I,vt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,e=Math.imul(N,at),i=(i=Math.imul(N,st))+Math.imul(z,at)|0,u=Math.imul(z,st),e=e+Math.imul(U,lt)|0,i=(i=i+Math.imul(U,ct)|0)+Math.imul(P,lt)|0,u=u+Math.imul(P,ct)|0;var Ot=(s+(e=e+Math.imul(O,dt)|0)|0)+((8191&(i=(i=i+Math.imul(O,vt)|0)+Math.imul(j,dt)|0))<<13)|0;s=((u=u+Math.imul(j,vt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,e=Math.imul(N,lt),i=(i=Math.imul(N,ct))+Math.imul(z,lt)|0,u=Math.imul(z,ct);var jt=(s+(e=e+Math.imul(U,dt)|0)|0)+((8191&(i=(i=i+Math.imul(U,vt)|0)+Math.imul(P,dt)|0))<<13)|0;s=((u=u+Math.imul(P,vt)|0)+(i>>>13)|0)+(jt>>>26)|0,jt&=67108863;var Lt=(s+(e=Math.imul(N,dt))|0)+((8191&(i=(i=Math.imul(N,vt))+Math.imul(z,dt)|0))<<13)|0;return s=((u=Math.imul(z,vt))+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,a[0]=gt,a[1]=mt,a[2]=yt,a[3]=_t,a[4]=wt,a[5]=Mt,a[6]=bt,a[7]=Bt,a[8]=At,a[9]=xt,a[10]=Et,a[11]=kt,a[12]=St,a[13]=Rt,a[14]=It,a[15]=Tt,a[16]=Ot,a[17]=jt,a[18]=Lt,0!==s&&(a[19]=s,n.length++),n};Math.imul||(B=a),i.prototype.mulTo=function(t,r){var n=this.length+t.length;return 10===this.length&&10===t.length?B(this,t,r):n<63?a(this,t,r):n<1024?s(this,t,r):h(this,t,r)},l.prototype.makeRBT=function(t){for(var r=new Array(t),n=i.prototype._countBits(t)-1,e=0;e<t;e++)r[e]=this.revBin(e,n,t);return r},l.prototype.revBin=function(t,r,n){if(0===t||t===n-1)return t;for(var e=0,i=0;i<r;i++)e|=(1&t)<<r-i-1,t>>=1;return e},l.prototype.permute=function(t,r,n,e,i,u){for(var o=0;o<u;o++)e[o]=r[t[o]],i[o]=n[t[o]]},l.prototype.transform=function(t,r,n,e,i,u){this.permute(u,t,r,n,e,i);for(var o=1;o<i;o<<=1)for(var f=o<<1,a=Math.cos(2*Math.PI/f),s=Math.sin(2*Math.PI/f),h=0;h<i;h+=f)for(var l=a,c=s,p=0;p<o;p++){var d=n[h+p],v=e[h+p],g=n[h+p+o],m=e[h+p+o],y=l*g-c*m;m=l*m+c*g,g=y,n[h+p]=d+g,e[h+p]=v+m,n[h+p+o]=d-g,e[h+p+o]=v-m,p!==f&&(y=a*l-s*c,c=a*c+s*l,l=y)}},l.prototype.guessLen13b=function(t,r){var n=1|Math.max(r,t),e=1&n,i=0;for(n=n/2|0;n;n>>>=1)i++;return 1<<i+1+e},l.prototype.conjugate=function(t,r,n){if(!(n<=1))for(var e=0;e<n/2;e++){var i=t[e];t[e]=t[n-e-1],t[n-e-1]=i,i=r[e],r[e]=-r[n-e-1],r[n-e-1]=-i}},l.prototype.normalize13b=function(t,r){for(var n=0,e=0;e<r/2;e++){var i=8192*Math.round(t[2*e+1]/r)+Math.round(t[2*e]/r)+n;t[e]=67108863&i,n=i<67108864?0:i/67108864|0}return t},l.prototype.convert13b=function(t,r,e,i){for(var u=0,o=0;o<r;o++)u+=0|t[o],e[2*o]=8191&u,u>>>=13,e[2*o+1]=8191&u,u>>>=13;for(o=2*r;o<i;++o)e[o]=0;n(0===u),n(0==(-8192&u))},l.prototype.stub=function(t){for(var r=new Array(t),n=0;n<t;n++)r[n]=0;return r},l.prototype.mulp=function(t,r,n){var e=2*this.guessLen13b(t.length,r.length),i=this.makeRBT(e),u=this.stub(e),o=new Array(e),f=new Array(e),a=new Array(e),s=new Array(e),h=new Array(e),l=new Array(e),c=n.words;c.length=e,this.convert13b(t.words,t.length,o,e),this.convert13b(r.words,r.length,s,e),this.transform(o,u,f,a,e,i),this.transform(s,u,h,l,e,i);for(var p=0;p<e;p++){var d=f[p]*h[p]-a[p]*l[p];a[p]=f[p]*l[p]+a[p]*h[p],f[p]=d}return this.conjugate(f,a,e),this.transform(f,a,c,u,e,i),this.conjugate(c,u,e),this.normalize13b(c,e),n.negative=t.negative^r.negative,n.length=t.length+r.length,n.strip()},i.prototype.mul=function(t){var r=new i(null);return r.words=new Array(this.length+t.length),this.mulTo(t,r)},i.prototype.mulf=function(t){var r=new i(null);return r.words=new Array(this.length+t.length),h(this,t,r)},i.prototype.imul=function(t){return this.clone().mulTo(t,this)},i.prototype.imuln=function(t){n("number"==typeof t),n(t<67108864);for(var r=0,e=0;e<this.length;e++){var i=(0|this.words[e])*t,u=(67108863&i)+(67108863&r);r>>=26,r+=i/67108864|0,r+=u>>>26,this.words[e]=67108863&u}return 0!==r&&(this.words[e]=r,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var r=f(t);if(0===r.length)return new i(1);for(var n=this,e=0;e<r.length&&0===r[e];e++,n=n.sqr());if(++e<r.length)for(var u=n.sqr();e<r.length;e++,u=u.sqr())0!==r[e]&&(n=n.mul(u));return n},i.prototype.iushln=function(t){n("number"==typeof t&&t>=0);var r,e=t%26,i=(t-e)/26,u=67108863>>>26-e<<26-e;if(0!==e){var o=0;for(r=0;r<this.length;r++){var f=this.words[r]&u,a=(0|this.words[r])-f<<e;this.words[r]=a|o,o=f>>>26-e}o&&(this.words[r]=o,this.length++)}if(0!==i){for(r=this.length-1;r>=0;r--)this.words[r+i]=this.words[r];for(r=0;r<i;r++)this.words[r]=0;this.length+=i}return this.strip()},i.prototype.ishln=function(t){return n(0===this.negative),this.iushln(t)},i.prototype.iushrn=function(t,r,e){n("number"==typeof t&&t>=0);var i;i=r?(r-r%26)/26:0;var u=t%26,o=Math.min((t-u)/26,this.length),f=67108863^67108863>>>u<<u,a=e;if(i-=o,i=Math.max(0,i),a){for(var s=0;s<o;s++)a.words[s]=this.words[s];a.length=o}if(0===o);else if(this.length>o)for(this.length-=o,s=0;s<this.length;s++)this.words[s]=this.words[s+o];else this.words[0]=0,this.length=1;var h=0;for(s=this.length-1;s>=0&&(0!==h||s>=i);s--){var l=0|this.words[s];this.words[s]=h<<26-u|l>>>u,h=l&f}return a&&0!==h&&(a.words[a.length++]=h),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,r,e){return n(0===this.negative),this.iushrn(t,r,e)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){n("number"==typeof t&&t>=0);var r=t%26,e=(t-r)/26,i=1<<r;return!(this.length<=e)&&!!(this.words[e]&i)},i.prototype.imaskn=function(t){n("number"==typeof t&&t>=0);var r=t%26,e=(t-r)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=e)return this;if(0!==r&&e++,this.length=Math.min(e,this.length),0!==r){var i=67108863^67108863>>>r<<r;this.words[this.length-1]&=i}return this.strip()},i.prototype.maskn=function(t){return this.clone().imaskn(t)},i.prototype.iaddn=function(t){return n("number"==typeof t),n(t<67108864),t<0?this.isubn(-t):0!==this.negative?1===this.length&&(0|this.words[0])<t?(this.words[0]=t-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(t),this.negative=1,this):this._iaddn(t)},i.prototype._iaddn=function(t){this.words[0]+=t;for(var r=0;r<this.length&&this.words[r]>=67108864;r++)this.words[r]-=67108864,r===this.length-1?this.words[r+1]=1:this.words[r+1]++;return this.length=Math.max(this.length,r+1),this},i.prototype.isubn=function(t){if(n("number"==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var r=0;r<this.length&&this.words[r]<0;r++)this.words[r]+=67108864,this.words[r+1]-=1;return this.strip()},i.prototype.addn=function(t){return this.clone().iaddn(t)},i.prototype.subn=function(t){return this.clone().isubn(t)},i.prototype.iabs=function(){return this.negative=0,this},i.prototype.abs=function(){return this.clone().iabs()},i.prototype._ishlnsubmul=function(t,r,e){var i,u=t.length+e;this._expand(u);var o,f=0;for(i=0;i<t.length;i++){o=(0|this.words[i+e])+f;var a=(0|t.words[i])*r;f=((o-=67108863&a)>>26)-(a/67108864|0),this.words[i+e]=67108863&o}for(;i<this.length-e;i++)f=(o=(0|this.words[i+e])+f)>>26,this.words[i+e]=67108863&o;if(0===f)return this.strip();for(n(-1===f),f=0,i=0;i<this.length;i++)f=(o=-(0|this.words[i])+f)>>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,r){var n=this.length-t.length,e=this.clone(),u=t,o=0|u.words[u.length-1];0!==(n=26-this._countBits(o))&&(u=u.ushln(n),e.iushln(n),o=0|u.words[u.length-1]);var f,a=e.length-u.length;if("mod"!==r){(f=new i(null)).length=a+1,f.words=new Array(f.length);for(var s=0;s<f.length;s++)f.words[s]=0}var h=e.clone()._ishlnsubmul(u,1,a);0===h.negative&&(e=h,f&&(f.words[a]=1));for(var l=a-1;l>=0;l--){var c=67108864*(0|e.words[u.length+l])+(0|e.words[u.length+l-1]);for(c=Math.min(c/o|0,67108863),e._ishlnsubmul(u,c,l);0!==e.negative;)c--,e.negative=0,e._ishlnsubmul(u,1,l),e.isZero()||(e.negative^=1);f&&(f.words[l]=c)}return f&&f.strip(),e.strip(),"div"!==r&&0!==n&&e.iushrn(n),{div:f||null,mod:e}},i.prototype.divmod=function(t,r,e){if(n(!t.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var u,o,f;return 0!==this.negative&&0===t.negative?(f=this.neg().divmod(t,r),"mod"!==r&&(u=f.div.neg()),"div"!==r&&(o=f.mod.neg(),e&&0!==o.negative&&o.iadd(t)),{div:u,mod:o}):0===this.negative&&0!==t.negative?(f=this.divmod(t.neg(),r),"mod"!==r&&(u=f.div.neg()),{div:u,mod:f.mod}):0!=(this.negative&t.negative)?(f=this.neg().divmod(t.neg(),r),"div"!==r&&(o=f.mod.neg(),e&&0!==o.negative&&o.isub(t)),{div:f.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?"div"===r?{div:this.divn(t.words[0]),mod:null}:"mod"===r?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,r)},i.prototype.div=function(t){return this.divmod(t,"div",!1).div},i.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},i.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},i.prototype.divRound=function(t){var r=this.divmod(t);if(r.mod.isZero())return r.div;var n=0!==r.div.negative?r.mod.isub(t):r.mod,e=t.ushrn(1),i=t.andln(1),u=n.cmp(e);return u<0||1===i&&0===u?r.div:0!==r.div.negative?r.div.isubn(1):r.div.iaddn(1)},i.prototype.modn=function(t){n(t<=67108863);for(var r=(1<<26)%t,e=0,i=this.length-1;i>=0;i--)e=(r*e+(0|this.words[i]))%t;return e},i.prototype.idivn=function(t){n(t<=67108863);for(var r=0,e=this.length-1;e>=0;e--){var i=(0|this.words[e])+67108864*r;this.words[e]=i/t|0,r=i%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var r=this,e=t.clone();r=0!==r.negative?r.umod(t):r.clone();for(var u=new i(1),o=new i(0),f=new i(0),a=new i(1),s=0;r.isEven()&&e.isEven();)r.iushrn(1),e.iushrn(1),++s;for(var h=e.clone(),l=r.clone();!r.isZero();){for(var c=0,p=1;0==(r.words[0]&p)&&c<26;++c,p<<=1);if(c>0)for(r.iushrn(c);c-- >0;)(u.isOdd()||o.isOdd())&&(u.iadd(h),o.isub(l)),u.iushrn(1),o.iushrn(1);for(var d=0,v=1;0==(e.words[0]&v)&&d<26;++d,v<<=1);if(d>0)for(e.iushrn(d);d-- >0;)(f.isOdd()||a.isOdd())&&(f.iadd(h),a.isub(l)),f.iushrn(1),a.iushrn(1);r.cmp(e)>=0?(r.isub(e),u.isub(f),o.isub(a)):(e.isub(r),f.isub(u),a.isub(o))}return{a:f,b:a,gcd:e.iushln(s)}},i.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var r=this,e=t.clone();r=0!==r.negative?r.umod(t):r.clone();for(var u=new i(1),o=new i(0),f=e.clone();r.cmpn(1)>0&&e.cmpn(1)>0;){for(var a=0,s=1;0==(r.words[0]&s)&&a<26;++a,s<<=1);if(a>0)for(r.iushrn(a);a-- >0;)u.isOdd()&&u.iadd(f),u.iushrn(1);for(var h=0,l=1;0==(e.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(e.iushrn(h);h-- >0;)o.isOdd()&&o.iadd(f),o.iushrn(1);r.cmp(e)>=0?(r.isub(e),u.isub(o)):(e.isub(r),o.isub(u))}var c;return(c=0===r.cmpn(1)?u:o).cmpn(0)<0&&c.iadd(t),c},i.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var r=this.clone(),n=t.clone();r.negative=0,n.negative=0;for(var e=0;r.isEven()&&n.isEven();e++)r.iushrn(1),n.iushrn(1);for(;;){for(;r.isEven();)r.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=r.cmp(n);if(i<0){var u=r;r=n,n=u}else if(0===i||0===n.cmpn(1))break;r.isub(n)}return n.iushln(e)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){n("number"==typeof t);var r=t%26,e=(t-r)/26,i=1<<r;if(this.length<=e)return this._expand(e+1),this.words[e]|=i,this;for(var u=i,o=e;0!==u&&o<this.length;o++){var f=0|this.words[o];u=(f+=u)>>>26,f&=67108863,this.words[o]=f}return 0!==u&&(this.words[o]=u,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(t){var r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;this.strip();var e;if(this.length>1)e=1;else{r&&(t=-t),n(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:i<t?-1:1}return 0!==this.negative?0|-e:e},i.prototype.cmp=function(t){if(0!==this.negative&&0===t.negative)return-1;if(0===this.negative&&0!==t.negative)return 1;var r=this.ucmp(t);return 0!==this.negative?0|-r:r},i.prototype.ucmp=function(t){if(this.length>t.length)return 1;if(this.length<t.length)return-1;for(var r=0,n=this.length-1;n>=0;n--){var e=0|this.words[n],i=0|t.words[n];if(e!==i){e<i?r=-1:e>i&&(r=1);break}}return r},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new m(t)},i.prototype.toRed=function(t){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return n(!this.red,"Already a number in reduction context"),this._forceRed(t)},i.prototype.redAdd=function(t){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},i.prototype.redISub=function(t){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},i.prototype.redShl=function(t){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},i.prototype.redMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(t){return n(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var A={k256:null,p224:null,p192:null,p25519:null};c.prototype._tmp=function(){var t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},c.prototype.ireduce=function(t){var r,n=t;do{this.split(n,this.tmp),r=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(r>this.n);var e=r<this.n?-1:n.ucmp(this.p);return 0===e?(n.words[0]=0,n.length=1):e>0?n.isub(this.p):n.strip(),n},c.prototype.split=function(t,r){t.iushrn(this.n,0,r)},c.prototype.imulK=function(t){return t.imul(this.k)},e(p,c),p.prototype.split=function(t,r){for(var n=Math.min(t.length,9),e=0;e<n;e++)r.words[e]=t.words[e];if(r.length=n,t.length<=9)return t.words[0]=0,void(t.length=1);var i=t.words[9];for(r.words[r.length++]=4194303&i,e=10;e<t.length;e++){var u=0|t.words[e];t.words[e-10]=(4194303&u)<<4|i>>>22,i=u}i>>>=22,t.words[e-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},p.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var r=0,n=0;n<t.length;n++){var e=0|t.words[n];r+=977*e,t.words[n]=67108863&r,r=64*e+(r/67108864|0)}return 0===t.words[t.length-1]&&(t.length--,0===t.words[t.length-1]&&t.length--),t},e(d,c),e(v,c),e(g,c),g.prototype.imulK=function(t){for(var r=0,n=0;n<t.length;n++){var e=19*(0|t.words[n])+r,i=67108863&e;e>>>=26,t.words[n]=i,r=e}return 0!==r&&(t.words[t.length++]=r),t},i._prime=function(t){if(A[t])return A[t];var r;if("k256"===t)r=new p;else if("p224"===t)r=new d;else if("p192"===t)r=new v;else{if("p25519"!==t)throw new Error("Unknown prime "+t);r=new g}return A[t]=r,r},m.prototype._verify1=function(t){n(0===t.negative,"red works only with positives"),n(t.red,"red works only with red numbers")},m.prototype._verify2=function(t,r){n(0==(t.negative|r.negative),"red works only with positives"),n(t.red&&t.red===r.red,"red works only with red numbers")},m.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},m.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},m.prototype.add=function(t,r){this._verify2(t,r);var n=t.add(r);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},m.prototype.iadd=function(t,r){this._verify2(t,r);var n=t.iadd(r);return n.cmp(this.m)>=0&&n.isub(this.m),n},m.prototype.sub=function(t,r){this._verify2(t,r);var n=t.sub(r);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},m.prototype.isub=function(t,r){this._verify2(t,r);var n=t.isub(r);return n.cmpn(0)<0&&n.iadd(this.m),n},m.prototype.shl=function(t,r){return this._verify1(t),this.imod(t.ushln(r))},m.prototype.imul=function(t,r){return this._verify2(t,r),this.imod(t.imul(r))},m.prototype.mul=function(t,r){return this._verify2(t,r),this.imod(t.mul(r))},m.prototype.isqr=function(t){return this.imul(t,t.clone())},m.prototype.sqr=function(t){return this.mul(t,t)},m.prototype.sqrt=function(t){if(t.isZero())return t.clone();var r=this.m.andln(3);if(n(r%2==1),3===r){var e=this.m.add(new i(1)).iushrn(2);return this.pow(t,e)}for(var u=this.m.subn(1),o=0;!u.isZero()&&0===u.andln(1);)o++,u.iushrn(1);n(!u.isZero());var f=new i(1).toRed(this),a=f.redNeg(),s=this.m.subn(1).iushrn(1),h=this.m.bitLength();for(h=new i(2*h*h).toRed(this);0!==this.pow(h,s).cmp(a);)h.redIAdd(a);for(var l=this.pow(h,u),c=this.pow(t,u.addn(1).iushrn(1)),p=this.pow(t,u),d=o;0!==p.cmp(f);){for(var v=p,g=0;0!==v.cmp(f);g++)v=v.redSqr();n(g<d);var m=this.pow(l,new i(1).iushln(d-g-1));c=c.redMul(m),l=m.redSqr(),p=p.redMul(l),d=g}return c},m.prototype.invm=function(t){var r=t._invmp(this.m);return 0!==r.negative?(r.negative=0,this.imod(r).redNeg()):this.imod(r)},m.prototype.pow=function(t,r){if(r.isZero())return new i(1).toRed(this);if(0===r.cmpn(1))return t.clone();var n=new Array(16);n[0]=new i(1).toRed(this),n[1]=t;for(var e=2;e<n.length;e++)n[e]=this.mul(n[e-1],t);var u=n[0],o=0,f=0,a=r.bitLength()%26;for(0===a&&(a=26),e=r.length-1;e>=0;e--){for(var s=r.words[e],h=a-1;h>=0;h--){var l=s>>h&1;u!==n[0]&&(u=this.sqr(u)),0!==l||0!==o?(o<<=1,o|=l,(4===++f||0===e&&0===h)&&(u=this.mul(u,n[o]),f=0,o=0)):f=0}a=26}return u},m.prototype.convertTo=function(t){var r=t.umod(this.m);return r===t?r.clone():r},m.prototype.convertFrom=function(t){var r=t.clone();return r.red=null,r},i.mont=function(t){return new y(t)},e(y,m),y.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},y.prototype.convertFrom=function(t){var r=this.imod(t.mul(this.rinv));return r.red=null,r},y.prototype.imul=function(t,r){if(t.isZero()||r.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(r),e=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(e).iushrn(this.shift),u=i;return i.cmp(this.m)>=0?u=i.isub(this.m):i.cmpn(0)<0&&(u=i.iadd(this.m)),u._forceRed(this)},y.prototype.mul=function(t,r){if(t.isZero()||r.isZero())return new i(0)._forceRed(this);var n=t.mul(r),e=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u=n.isub(e).iushrn(this.shift),o=u;return u.cmp(this.m)>=0?o=u.isub(this.m):u.cmpn(0)<0&&(o=u.iadd(this.m)),o._forceRed(this)},y.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,commonjsGlobal)}),lodash=createCommonjsModule(function(t,r){(function(){function n(t,r,n){switch(n.length){case 0:return t.call(r);case 1:return t.call(r,n[0]);case 2:return t.call(r,n[0],n[1]);case 3:return t.call(r,n[0],n[1],n[2])}return t.apply(r,n)}function e(t,r,n,e){for(var i=-1,u=null==t?0:t.length;++i<u;){var o=t[i];r(e,o,n(o),t)}return e}function i(t,r){for(var n=-1,e=null==t?0:t.length;++n<e&&!1!==r(t[n],n,t););return t}function u(t,r){for(var n=null==t?0:t.length;n--&&!1!==r(t[n],n,t););return t}function o(t,r){for(var n=-1,e=null==t?0:t.length;++n<e;)if(!r(t[n],n,t))return!1;return!0}function f(t,r){for(var n=-1,e=null==t?0:t.length,i=0,u=[];++n<e;){var o=t[n];r(o,n,t)&&(u[i++]=o)}return u}function a(t,r){return!!(null==t?0:t.length)&&_(t,r,0)>-1}function s(t,r,n){for(var e=-1,i=null==t?0:t.length;++e<i;)if(n(r,t[e]))return!0;return!1}function h(t,r){for(var n=-1,e=null==t?0:t.length,i=Array(e);++n<e;)i[n]=r(t[n],n,t);return i}function l(t,r){for(var n=-1,e=r.length,i=t.length;++n<e;)t[i+n]=r[n];return t}function c(t,r,n,e){var i=-1,u=null==t?0:t.length;for(e&&u&&(n=t[++i]);++i<u;)n=r(n,t[i],i,t);return n}function p(t,r,n,e){var i=null==t?0:t.length;for(e&&i&&(n=t[--i]);i--;)n=r(n,t[i],i,t);return n}function d(t,r){for(var n=-1,e=null==t?0:t.length;++n<e;)if(r(t[n],n,t))return!0;return!1}function v(t){return t.split("")}function g(t){return t.match(Or)||[]}function m(t,r,n){var e;return n(t,function(t,n,i){if(r(t,n,i))return e=n,!1}),e}function y(t,r,n,e){for(var i=t.length,u=n+(e?1:-1);e?u--:++u<i;)if(r(t[u],u,t))return u;return-1}function _(t,r,n){return r===r?G(t,r,n):y(t,M,n)}function w(t,r,n,e){for(var i=n-1,u=t.length;++i<u;)if(e(t[i],r))return i;return-1}function M(t){return t!==t}function b(t,r){var n=null==t?0:t.length;return n?k(t,r)/n:Tt}function B(t){return function(r){return null==r?tt:r[t]}}function A(t){return function(r){return null==t?tt:t[r]}}function x(t,r,n,e,i){return i(t,function(t,i,u){n=e?(e=!1,t):r(n,t,i,u)}),n}function E(t,r){var n=t.length;for(t.sort(r);n--;)t[n]=t[n].value;return t}function k(t,r){for(var n,e=-1,i=t.length;++e<i;){var u=r(t[e]);u!==tt&&(n=n===tt?u:n+u)}return n}function S(t,r){for(var n=-1,e=Array(t);++n<t;)e[n]=r(n);return e}function R(t,r){return h(r,function(r){return[r,t[r]]})}function I(t){return function(r){return t(r)}}function T(t,r){return h(r,function(r){return t[r]})}function O(t,r){return t.has(r)}function j(t,r){for(var n=-1,e=t.length;++n<e&&_(r,t[n],0)>-1;);return n}function L(t,r){for(var n=t.length;n--&&_(r,t[n],0)>-1;);return n}function U(t,r){for(var n=t.length,e=0;n--;)t[n]===r&&++e;return e}function P(t){return"\\"+yn[t]}function C(t,r){return null==t?tt:t[r]}function N(t){return sn.test(t)}function z(t){return hn.test(t)}function $(t){for(var r,n=[];!(r=t.next()).done;)n.push(r.value);return n}function W(t){var r=-1,n=Array(t.size);return t.forEach(function(t,e){n[++r]=[e,t]}),n}function D(t,r){return function(n){return t(r(n))}}function Y(t,r){for(var n=-1,e=t.length,i=0,u=[];++n<e;){var o=t[n];o!==r&&o!==ot||(t[n]=ot,u[i++]=n)}return u}function q(t,r){return"__proto__"==r?tt:t[r]}function F(t){var r=-1,n=Array(t.size);return t.forEach(function(t){n[++r]=t}),n}function Z(t){var r=-1,n=Array(t.size);return t.forEach(function(t){n[++r]=[t,t]}),n}function G(t,r,n){for(var e=n-1,i=t.length;++e<i;)if(t[e]===r)return e;return-1}function V(t,r,n){for(var e=n+1;e--;)if(t[e]===r)return e;return e}function K(t){return N(t)?X(t):Un(t)}function H(t){return N(t)?J(t):v(t)}function X(t){for(var r=fn.lastIndex=0;fn.test(t);)++r;return r}function J(t){return t.match(fn)||[]}function Q(t){return t.match(an)||[]}var tt,rt=200,nt="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",et="Expected a function",it="__lodash_hash_undefined__",ut=500,ot="__lodash_placeholder__",ft=1,at=2,st=4,ht=1,lt=2,ct=1,pt=2,dt=4,vt=8,gt=16,mt=32,yt=64,_t=128,wt=256,Mt=512,bt=30,Bt="...",At=800,xt=16,Et=1,kt=2,St=1/0,Rt=9007199254740991,It=1.7976931348623157e308,Tt=NaN,Ot=4294967295,jt=Ot-1,Lt=Ot>>>1,Ut=[["ary",_t],["bind",ct],["bindKey",pt],["curry",vt],["curryRight",gt],["flip",Mt],["partial",mt],["partialRight",yt],["rearg",wt]],Pt="[object Arguments]",Ct="[object Array]",Nt="[object AsyncFunction]",zt="[object Boolean]",$t="[object Date]",Wt="[object DOMException]",Dt="[object Error]",Yt="[object Function]",qt="[object GeneratorFunction]",Ft="[object Map]",Zt="[object Number]",Gt="[object Null]",Vt="[object Object]",Kt="[object Proxy]",Ht="[object RegExp]",Xt="[object Set]",Jt="[object String]",Qt="[object Symbol]",tr="[object Undefined]",rr="[object WeakMap]",nr="[object WeakSet]",er="[object ArrayBuffer]",ir="[object DataView]",ur="[object Float32Array]",or="[object Float64Array]",fr="[object Int8Array]",ar="[object Int16Array]",sr="[object Int32Array]",hr="[object Uint8Array]",lr="[object Uint8ClampedArray]",cr="[object Uint16Array]",pr="[object Uint32Array]",dr=/\b__p \+= '';/g,vr=/\b(__p \+=) '' \+/g,gr=/(__e\(.*?\)|\b__t\)) \+\n'';/g,mr=/&(?:amp|lt|gt|quot|#39);/g,yr=/[&<>"']/g,_r=RegExp(mr.source),wr=RegExp(yr.source),Mr=/<%=([\s\S]+?)%>/g,br=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Br=/^\w*$/,Ar=/[\\^$.*+?()[\]{}|]/g,xr=RegExp(Ar.source),Er=/^\s+|\s+$/g,kr=/^\s+/,Sr=/\s+$/,Rr=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ir=/\{\n\/\* \[wrapped with (.+)\] \*/,Tr=/,? & /,Or=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,jr=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Lr=/\w*$/,Ur=/^[-+]0x[0-9a-f]+$/i,Pr=/^0b[01]+$/i,Cr=/^\[object .+?Constructor\]$/,Nr=/^0o[0-7]+$/i,zr=/^(?:0|[1-9]\d*)$/,$r=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Wr=/($^)/,Dr=/['\n\r\u2028\u2029\\]/g,Yr="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",qr="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Fr="["+qr+"]",Zr="["+Yr+"]",Gr="[a-z\\xdf-\\xf6\\xf8-\\xff]",Vr="[^\\ud800-\\udfff"+qr+"\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",Kr="\\ud83c[\\udffb-\\udfff]",Hr="(?:\\ud83c[\\udde6-\\uddff]){2}",Xr="[\\ud800-\\udbff][\\udc00-\\udfff]",Jr="[A-Z\\xc0-\\xd6\\xd8-\\xde]",Qr="(?:"+Gr+"|"+Vr+")",tn="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?",rn="[\\ufe0e\\ufe0f]?"+tn+("(?:\\u200d(?:"+["[^\\ud800-\\udfff]",Hr,Xr].join("|")+")[\\ufe0e\\ufe0f]?"+tn+")*"),nn="(?:"+["[\\u2700-\\u27bf]",Hr,Xr].join("|")+")"+rn,en="(?:"+["[^\\ud800-\\udfff]"+Zr+"?",Zr,Hr,Xr,"[\\ud800-\\udfff]"].join("|")+")",un=RegExp("['’]","g"),on=RegExp(Zr,"g"),fn=RegExp(Kr+"(?="+Kr+")|"+en+rn,"g"),an=RegExp([Jr+"?"+Gr+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Fr,Jr,"$"].join("|")+")","(?:[A-Z\\xc0-\\xd6\\xd8-\\xde]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Fr,Jr+Qr,"$"].join("|")+")",Jr+"?"+Qr+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Jr+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",nn].join("|"),"g"),sn=RegExp("[\\u200d\\ud800-\\udfff"+Yr+"\\ufe0e\\ufe0f]"),hn=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ln=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],cn=-1,pn={};pn[ur]=pn[or]=pn[fr]=pn[ar]=pn[sr]=pn[hr]=pn[lr]=pn[cr]=pn[pr]=!0,pn[Pt]=pn[Ct]=pn[er]=pn[zt]=pn[ir]=pn[$t]=pn[Dt]=pn[Yt]=pn[Ft]=pn[Zt]=pn[Vt]=pn[Ht]=pn[Xt]=pn[Jt]=pn[rr]=!1;var dn={};dn[Pt]=dn[Ct]=dn[er]=dn[ir]=dn[zt]=dn[$t]=dn[ur]=dn[or]=dn[fr]=dn[ar]=dn[sr]=dn[Ft]=dn[Zt]=dn[Vt]=dn[Ht]=dn[Xt]=dn[Jt]=dn[Qt]=dn[hr]=dn[lr]=dn[cr]=dn[pr]=!0,dn[Dt]=dn[Yt]=dn[rr]=!1;var vn={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"},gn={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},mn={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},yn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},_n=parseFloat,wn=parseInt,Mn="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,bn="object"==typeof self&&self&&self.Object===Object&&self,Bn=Mn||bn||Function("return this")(),An=r&&!r.nodeType&&r,xn=An&&!0&&t&&!t.nodeType&&t,En=xn&&xn.exports===An,kn=En&&Mn.process,Sn=function(){try{var t=xn&&xn.require&&xn.require("util").types;return t||kn&&kn.binding&&kn.binding("util")}catch(t){}}(),Rn=Sn&&Sn.isArrayBuffer,In=Sn&&Sn.isDate,Tn=Sn&&Sn.isMap,On=Sn&&Sn.isRegExp,jn=Sn&&Sn.isSet,Ln=Sn&&Sn.isTypedArray,Un=B("length"),Pn=A(vn),Cn=A(gn),Nn=A(mn),zn=function t(r){function v(t){if(Jf(t)&&!sc(t)&&!(t instanceof X)){if(t instanceof G)return t;if(sh.call(t,"__wrapped__"))return Gu(t)}return new G(t)}function A(){}function G(t,r){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!r,this.__index__=0,this.__values__=tt}function X(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Ot,this.__views__=[]}function J(){var t=new X(this.__wrapped__);return t.__actions__=Ri(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Ri(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Ri(this.__views__),t}function Or(){if(this.__filtered__){var t=new X(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t}function Yr(){var t=this.__wrapped__.value(),r=this.__dir__,n=sc(t),e=r<0,i=n?t.length:0,u=yu(0,i,this.__views__),o=u.start,f=u.end,a=f-o,s=e?f:o-1,h=this.__iteratees__,l=h.length,c=0,p=zh(a,this.__takeCount__);if(!n||!e&&i==a&&p==a)return ci(t,this.__actions__);var d=[];t:for(;a--&&c<p;){for(var v=-1,g=t[s+=r];++v<l;){var m=h[v],y=m.iteratee,_=m.type,w=y(g);if(_==kt)g=w;else if(!w){if(_==Et)continue t;break t}}d[c++]=g}return d}function qr(t){var r=-1,n=null==t?0:t.length;for(this.clear();++r<n;){var e=t[r];this.set(e[0],e[1])}}function Fr(){this.__data__=Kh?Kh(null):{},this.size=0}function Zr(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r}function Gr(t){var r=this.__data__;if(Kh){var n=r[t];return n===it?tt:n}return sh.call(r,t)?r[t]:tt}function Vr(t){var r=this.__data__;return Kh?r[t]!==tt:sh.call(r,t)}function Kr(t,r){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=Kh&&r===tt?it:r,this}function Hr(t){var r=-1,n=null==t?0:t.length;for(this.clear();++r<n;){var e=t[r];this.set(e[0],e[1])}}function Xr(){this.__data__=[],this.size=0}function Jr(t){var r=this.__data__,n=qn(r,t);return!(n<0)&&(n==r.length-1?r.pop():Bh.call(r,n,1),--this.size,!0)}function Qr(t){var r=this.__data__,n=qn(r,t);return n<0?tt:r[n][1]}function tn(t){return qn(this.__data__,t)>-1}function rn(t,r){var n=this.__data__,e=qn(n,t);return e<0?(++this.size,n.push([t,r])):n[e][1]=r,this}function nn(t){var r=-1,n=null==t?0:t.length;for(this.clear();++r<n;){var e=t[r];this.set(e[0],e[1])}}function en(){this.size=0,this.__data__={hash:new qr,map:new(Fh||Hr),string:new qr}}function fn(t){var r=du(this,t).delete(t);return this.size-=r?1:0,r}function an(t){return du(this,t).get(t)}function sn(t){return du(this,t).has(t)}function hn(t,r){var n=du(this,t),e=n.size;return n.set(t,r),this.size+=n.size==e?0:1,this}function vn(t){var r=-1,n=null==t?0:t.length;for(this.__data__=new nn;++r<n;)this.add(t[r])}function gn(t){return this.__data__.set(t,it),this}function mn(t){return this.__data__.has(t)}function yn(t){var r=this.__data__=new Hr(t);this.size=r.size}function Mn(){this.__data__=new Hr,this.size=0}function bn(t){var r=this.__data__,n=r.delete(t);return this.size=r.size,n}function An(t){return this.__data__.get(t)}function xn(t){return this.__data__.has(t)}function kn(t,r){var n=this.__data__;if(n instanceof Hr){var e=n.__data__;if(!Fh||e.length<rt-1)return e.push([t,r]),this.size=++n.size,this;n=this.__data__=new nn(e)}return n.set(t,r),this.size=n.size,this}function Sn(t,r){var n=sc(t),e=!n&&ac(t),i=!n&&!e&&lc(t),u=!n&&!e&&!i&&gc(t),o=n||e||i||u,f=o?S(t.length,nh):[],a=f.length;for(var s in t)!r&&!sh.call(t,s)||o&&("length"==s||i&&("offset"==s||"parent"==s)||u&&("buffer"==s||"byteLength"==s||"byteOffset"==s)||Eu(s,a))||f.push(s);return f}function Un(t){var r=t.length;return r?t[Ge(0,r-1)]:tt}function $n(t,r){return Yu(Ri(t),Hn(r,0,t.length))}function Wn(t){return Yu(Ri(t))}function Dn(t,r,n){(n===tt||Nf(t[r],n))&&(n!==tt||r in t)||Vn(t,r,n)}function Yn(t,r,n){var e=t[r];sh.call(t,r)&&Nf(e,n)&&(n!==tt||r in t)||Vn(t,r,n)}function qn(t,r){for(var n=t.length;n--;)if(Nf(t[n][0],r))return n;return-1}function Fn(t,r,n,e){return fl(t,function(t,i,u){r(e,t,n(t),u)}),e}function Zn(t,r){return t&&Ii(r,ja(r),t)}function Gn(t,r){return t&&Ii(r,La(r),t)}function Vn(t,r,n){"__proto__"==r&&kh?kh(t,r,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[r]=n}function Kn(t,r){for(var n=-1,e=r.length,i=Ks(e),u=null==t;++n<e;)i[n]=u?tt:Ia(t,r[n]);return i}function Hn(t,r,n){return t===t&&(n!==tt&&(t=t<=n?t:n),r!==tt&&(t=t>=r?t:r)),t}function Xn(t,r,n,e,u,o){var f,a=r&ft,s=r&at,h=r&st;if(n&&(f=u?n(t,e,u,o):n(t)),f!==tt)return f;if(!Xf(t))return t;var l=sc(t);if(l){if(f=Mu(t),!a)return Ri(t,f)}else{var c=_l(t),p=c==Yt||c==qt;if(lc(t))return _i(t,a);if(c==Vt||c==Pt||p&&!u){if(f=s||p?{}:bu(t),!a)return s?Oi(t,Gn(f,t)):Ti(t,Zn(f,t))}else{if(!dn[c])return u?t:{};f=Bu(t,c,a)}}o||(o=new yn);var d=o.get(t);if(d)return d;if(o.set(t,f),vc(t))return t.forEach(function(e){f.add(Xn(e,r,n,e,t,o))}),f;if(pc(t))return t.forEach(function(e,i){f.set(i,Xn(e,r,n,i,t,o))}),f;var v=h?s?hu:su:s?La:ja,g=l?tt:v(t);return i(g||t,function(e,i){g&&(e=t[i=e]),Yn(f,i,Xn(e,r,n,i,t,o))}),f}function Jn(t){var r=ja(t);return function(n){return Qn(n,t,r)}}function Qn(t,r,n){var e=n.length;if(null==t)return!e;for(t=th(t);e--;){var i=n[e],u=r[i],o=t[i];if(o===tt&&!(i in t)||!u(o))return!1}return!0}function te(t,r,n){if("function"!=typeof t)throw new eh(et);return bl(function(){t.apply(tt,n)},r)}function re(t,r,n,e){var i=-1,u=a,o=!0,f=t.length,l=[],c=r.length;if(!f)return l;n&&(r=h(r,I(n))),e?(u=s,o=!1):r.length>=rt&&(u=O,o=!1,r=new vn(r));t:for(;++i<f;){var p=t[i],d=null==n?p:n(p);if(p=e||0!==p?p:0,o&&d===d){for(var v=c;v--;)if(r[v]===d)continue t;l.push(p)}else u(r,d,e)||l.push(p)}return l}function ne(t,r){var n=!0;return fl(t,function(t,e,i){return n=!!r(t,e,i)}),n}function ee(t,r,n){for(var e=-1,i=t.length;++e<i;){var u=t[e],o=r(u);if(null!=o&&(f===tt?o===o&&!sa(o):n(o,f)))var f=o,a=u}return a}function ie(t,r,n,e){var i=t.length;for((n=va(n))<0&&(n=-n>i?0:i+n),(e=e===tt||e>i?i:va(e))<0&&(e+=i),e=n>e?0:ga(e);n<e;)t[n++]=r;return t}function ue(t,r){var n=[];return fl(t,function(t,e,i){r(t,e,i)&&n.push(t)}),n}function oe(t,r,n,e,i){var u=-1,o=t.length;for(n||(n=xu),i||(i=[]);++u<o;){var f=t[u];r>0&&n(f)?r>1?oe(f,r-1,n,e,i):l(i,f):e||(i[i.length]=f)}return i}function fe(t,r){return t&&sl(t,r,ja)}function ae(t,r){return t&&hl(t,r,ja)}function se(t,r){return f(r,function(r){return Vf(t[r])})}function he(t,r){for(var n=0,e=(r=mi(r,t)).length;null!=t&&n<e;)t=t[qu(r[n++])];return n&&n==e?t:tt}function le(t,r,n){var e=r(t);return sc(t)?e:l(e,n(t))}function ce(t){return null==t?t===tt?tr:Gt:Eh&&Eh in th(t)?mu(t):Cu(t)}function pe(t,r){return t>r}function de(t,r){return null!=t&&sh.call(t,r)}function ve(t,r){return null!=t&&r in th(t)}function ge(t,r,n){return t>=zh(r,n)&&t<Nh(r,n)}function me(t,r,n){for(var e=n?s:a,i=t[0].length,u=t.length,o=u,f=Ks(u),l=1/0,c=[];o--;){var p=t[o];o&&r&&(p=h(p,I(r))),l=zh(p.length,l),f[o]=!n&&(r||i>=120&&p.length>=120)?new vn(o&&p):tt}p=t[0];var d=-1,v=f[0];t:for(;++d<i&&c.length<l;){var g=p[d],m=r?r(g):g;if(g=n||0!==g?g:0,!(v?O(v,m):e(c,m,n))){for(o=u;--o;){var y=f[o];if(!(y?O(y,m):e(t[o],m,n)))continue t}v&&v.push(m),c.push(g)}}return c}function ye(t,r,n,e){return fe(t,function(t,i,u){r(e,n(t),i,u)}),e}function _e(t,r,e){var i=null==(t=zu(t,r=mi(r,t)))?t:t[qu(co(r))];return null==i?tt:n(i,t,e)}function we(t){return Jf(t)&&ce(t)==Pt}function Me(t){return Jf(t)&&ce(t)==er}function be(t){return Jf(t)&&ce(t)==$t}function Be(t,r,n,e,i){return t===r||(null==t||null==r||!Jf(t)&&!Jf(r)?t!==t&&r!==r:Ae(t,r,n,e,Be,i))}function Ae(t,r,n,e,i,u){var o=sc(t),f=sc(r),a=o?Ct:_l(t),s=f?Ct:_l(r),h=(a=a==Pt?Vt:a)==Vt,l=(s=s==Pt?Vt:s)==Vt,c=a==s;if(c&&lc(t)){if(!lc(r))return!1;o=!0,h=!1}if(c&&!h)return u||(u=new yn),o||gc(t)?uu(t,r,n,e,i,u):ou(t,r,a,n,e,i,u);if(!(n&ht)){var p=h&&sh.call(t,"__wrapped__"),d=l&&sh.call(r,"__wrapped__");if(p||d){var v=p?t.value():t,g=d?r.value():r;return u||(u=new yn),i(v,g,n,e,u)}}return!!c&&(u||(u=new yn),fu(t,r,n,e,i,u))}function xe(t){return Jf(t)&&_l(t)==Ft}function Ee(t,r,n,e){var i=n.length,u=i,o=!e;if(null==t)return!u;for(t=th(t);i--;){var f=n[i];if(o&&f[2]?f[1]!==t[f[0]]:!(f[0]in t))return!1}for(;++i<u;){var a=(f=n[i])[0],s=t[a],h=f[1];if(o&&f[2]){if(s===tt&&!(a in t))return!1}else{var l=new yn;if(e)var c=e(s,h,a,t,r,l);if(!(c===tt?Be(h,s,ht|lt,e,l):c))return!1}}return!0}function ke(t){return!(!Xf(t)||Tu(t))&&(Vf(t)?vh:Cr).test(Fu(t))}function Se(t){return Jf(t)&&ce(t)==Ht}function Re(t){return Jf(t)&&_l(t)==Xt}function Ie(t){return Jf(t)&&Hf(t.length)&&!!pn[ce(t)]}function Te(t){return"function"==typeof t?t:null==t?Bs:"object"==typeof t?sc(t)?Ce(t[0],t[1]):Pe(t):Ts(t)}function Oe(t){if(!Ou(t))return Ch(t);var r=[];for(var n in th(t))sh.call(t,n)&&"constructor"!=n&&r.push(n);return r}function je(t){if(!Xf(t))return Pu(t);var r=Ou(t),n=[];for(var e in t)("constructor"!=e||!r&&sh.call(t,e))&&n.push(e);return n}function Le(t,r){return t<r}function Ue(t,r){var n=-1,e=zf(t)?Ks(t.length):[];return fl(t,function(t,i,u){e[++n]=r(t,i,u)}),e}function Pe(t){var r=vu(t);return 1==r.length&&r[0][2]?Lu(r[0][0],r[0][1]):function(n){return n===t||Ee(n,t,r)}}function Ce(t,r){return Su(t)&&ju(r)?Lu(qu(t),r):function(n){var e=Ia(n,t);return e===tt&&e===r?Oa(n,t):Be(r,e,ht|lt)}}function Ne(t,r,n,e,i){t!==r&&sl(r,function(u,o){if(Xf(u))i||(i=new yn),ze(t,r,o,n,Ne,e,i);else{var f=e?e(q(t,o),u,o+"",t,r,i):tt;f===tt&&(f=u),Dn(t,o,f)}},La)}function ze(t,r,n,e,i,u,o){var f=q(t,n),a=q(r,n),s=o.get(a);if(s)return void Dn(t,n,s);var h=u?u(f,a,n+"",t,r,o):tt,l=h===tt;if(l){var c=sc(a),p=!c&&lc(a),d=!c&&!p&&gc(a);h=a,c||p||d?sc(f)?h=f:$f(f)?h=Ri(f):p?(l=!1,h=_i(a,!0)):d?(l=!1,h=Ai(a,!0)):h=[]:oa(a)||ac(a)?(h=f,ac(f)?h=ya(f):(!Xf(f)||e&&Vf(f))&&(h=bu(a))):l=!1}l&&(o.set(a,h),i(h,a,e,u,o),o.delete(a)),Dn(t,n,h)}function $e(t,r){var n=t.length;if(n)return r+=r<0?n:0,Eu(r,n)?t[r]:tt}function We(t,r,n){var e=-1;return r=h(r.length?r:[Bs],I(pu())),E(Ue(t,function(t,n,i){return{criteria:h(r,function(r){return r(t)}),index:++e,value:t}}),function(t,r){return Ei(t,r,n)})}function De(t,r){return Ye(t,r,function(r,n){return Oa(t,n)})}function Ye(t,r,n){for(var e=-1,i=r.length,u={};++e<i;){var o=r[e],f=he(t,o);n(f,o)&&Qe(u,mi(o,t),f)}return u}function qe(t){return function(r){return he(r,t)}}function Fe(t,r,n,e){var i=e?w:_,u=-1,o=r.length,f=t;for(t===r&&(r=Ri(r)),n&&(f=h(t,I(n)));++u<o;)for(var a=0,s=r[u],l=n?n(s):s;(a=i(f,l,a,e))>-1;)f!==t&&Bh.call(f,a,1),Bh.call(t,a,1);return t}function Ze(t,r){for(var n=t?r.length:0,e=n-1;n--;){var i=r[n];if(n==e||i!==u){var u=i;Eu(i)?Bh.call(t,i,1):si(t,i)}}return t}function Ge(t,r){return t+Oh(Dh()*(r-t+1))}function Ve(t,r,n,e){for(var i=-1,u=Nh(Th((r-t)/(n||1)),0),o=Ks(u);u--;)o[e?u:++i]=t,t+=n;return o}function Ke(t,r){var n="";if(!t||r<1||r>Rt)return n;do{r%2&&(n+=t),(r=Oh(r/2))&&(t+=t)}while(r);return n}function He(t,r){return Bl(Nu(t,r,Bs),t+"")}function Xe(t){return Un(Za(t))}function Je(t,r){var n=Za(t);return Yu(n,Hn(r,0,n.length))}function Qe(t,r,n,e){if(!Xf(t))return t;for(var i=-1,u=(r=mi(r,t)).length,o=u-1,f=t;null!=f&&++i<u;){var a=qu(r[i]),s=n;if(i!=o){var h=f[a];(s=e?e(h,a,f):tt)===tt&&(s=Xf(h)?h:Eu(r[i+1])?[]:{})}Yn(f,a,s),f=f[a]}return t}function ti(t){return Yu(Za(t))}function ri(t,r,n){var e=-1,i=t.length;r<0&&(r=-r>i?0:i+r),(n=n>i?i:n)<0&&(n+=i),i=r>n?0:n-r>>>0,r>>>=0;for(var u=Ks(i);++e<i;)u[e]=t[e+r];return u}function ni(t,r){var n;return fl(t,function(t,e,i){return!(n=r(t,e,i))}),!!n}function ei(t,r,n){var e=0,i=null==t?e:t.length;if("number"==typeof r&&r===r&&i<=Lt){for(;e<i;){var u=e+i>>>1,o=t[u];null!==o&&!sa(o)&&(n?o<=r:o<r)?e=u+1:i=u}return i}return ii(t,r,Bs,n)}function ii(t,r,n,e){r=n(r);for(var i=0,u=null==t?0:t.length,o=r!==r,f=null===r,a=sa(r),s=r===tt;i<u;){var h=Oh((i+u)/2),l=n(t[h]),c=l!==tt,p=null===l,d=l===l,v=sa(l);if(o)var g=e||d;else g=s?d&&(e||c):f?d&&c&&(e||!p):a?d&&c&&!p&&(e||!v):!p&&!v&&(e?l<=r:l<r);g?i=h+1:u=h}return zh(u,jt)}function ui(t,r){for(var n=-1,e=t.length,i=0,u=[];++n<e;){var o=t[n],f=r?r(o):o;if(!n||!Nf(f,a)){var a=f;u[i++]=0===o?0:o}}return u}function oi(t){return"number"==typeof t?t:sa(t)?Tt:+t}function fi(t){if("string"==typeof t)return t;if(sc(t))return h(t,fi)+"";if(sa(t))return ul?ul.call(t):"";var r=t+"";return"0"==r&&1/t==-St?"-0":r}function ai(t,r,n){var e=-1,i=a,u=t.length,o=!0,f=[],h=f;if(n)o=!1,i=s;else if(u>=rt){var l=r?null:vl(t);if(l)return F(l);o=!1,i=O,h=new vn}else h=r?[]:f;t:for(;++e<u;){var c=t[e],p=r?r(c):c;if(c=n||0!==c?c:0,o&&p===p){for(var d=h.length;d--;)if(h[d]===p)continue t;r&&h.push(p),f.push(c)}else i(h,p,n)||(h!==f&&h.push(p),f.push(c))}return f}function si(t,r){return r=mi(r,t),null==(t=zu(t,r))||delete t[qu(co(r))]}function hi(t,r,n,e){return Qe(t,r,n(he(t,r)),e)}function li(t,r,n,e){for(var i=t.length,u=e?i:-1;(e?u--:++u<i)&&r(t[u],u,t););return n?ri(t,e?0:u,e?u+1:i):ri(t,e?u+1:0,e?i:u)}function ci(t,r){var n=t;return n instanceof X&&(n=n.value()),c(r,function(t,r){return r.func.apply(r.thisArg,l([t],r.args))},n)}function pi(t,r,n){var e=t.length;if(e<2)return e?ai(t[0]):[];for(var i=-1,u=Ks(e);++i<e;)for(var o=t[i],f=-1;++f<e;)f!=i&&(u[i]=re(u[i]||o,t[f],r,n));return ai(oe(u,1),r,n)}function di(t,r,n){for(var e=-1,i=t.length,u=r.length,o={};++e<i;){var f=e<u?r[e]:tt;n(o,t[e],f)}return o}function vi(t){return $f(t)?t:[]}function gi(t){return"function"==typeof t?t:Bs}function mi(t,r){return sc(t)?t:Su(t,r)?[t]:Al(wa(t))}function yi(t,r,n){var e=t.length;return n=n===tt?e:n,!r&&n>=e?t:ri(t,r,n)}function _i(t,r){if(r)return t.slice();var n=t.length,e=_h?_h(n):new t.constructor(n);return t.copy(e),e}function wi(t){var r=new t.constructor(t.byteLength);return new yh(r).set(new yh(t)),r}function Mi(t,r){var n=r?wi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}function bi(t){var r=new t.constructor(t.source,Lr.exec(t));return r.lastIndex=t.lastIndex,r}function Bi(t){return il?th(il.call(t)):{}}function Ai(t,r){var n=r?wi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function xi(t,r){if(t!==r){var n=t!==tt,e=null===t,i=t===t,u=sa(t),o=r!==tt,f=null===r,a=r===r,s=sa(r);if(!f&&!s&&!u&&t>r||u&&o&&a&&!f&&!s||e&&o&&a||!n&&a||!i)return 1;if(!e&&!u&&!s&&t<r||s&&n&&i&&!e&&!u||f&&n&&i||!o&&i||!a)return-1}return 0}function Ei(t,r,n){for(var e=-1,i=t.criteria,u=r.criteria,o=i.length,f=n.length;++e<o;){var a=xi(i[e],u[e]);if(a)return e>=f?a:a*("desc"==n[e]?-1:1)}return t.index-r.index}function ki(t,r,n,e){for(var i=-1,u=t.length,o=n.length,f=-1,a=r.length,s=Nh(u-o,0),h=Ks(a+s),l=!e;++f<a;)h[f]=r[f];for(;++i<o;)(l||i<u)&&(h[n[i]]=t[i]);for(;s--;)h[f++]=t[i++];return h}function Si(t,r,n,e){for(var i=-1,u=t.length,o=-1,f=n.length,a=-1,s=r.length,h=Nh(u-f,0),l=Ks(h+s),c=!e;++i<h;)l[i]=t[i];for(var p=i;++a<s;)l[p+a]=r[a];for(;++o<f;)(c||i<u)&&(l[p+n[o]]=t[i++]);return l}function Ri(t,r){var n=-1,e=t.length;for(r||(r=Ks(e));++n<e;)r[n]=t[n];return r}function Ii(t,r,n,e){var i=!n;n||(n={});for(var u=-1,o=r.length;++u<o;){var f=r[u],a=e?e(n[f],t[f],f,n,t):tt;a===tt&&(a=t[f]),i?Vn(n,f,a):Yn(n,f,a)}return n}function Ti(t,r){return Ii(t,ml(t),r)}function Oi(t,r){return Ii(t,yl(t),r)}function ji(t,r){return function(n,i){var u=sc(n)?e:Fn,o=r?r():{};return u(n,t,pu(i,2),o)}}function Li(t){return He(function(r,n){var e=-1,i=n.length,u=i>1?n[i-1]:tt,o=i>2?n[2]:tt;for(u=t.length>3&&"function"==typeof u?(i--,u):tt,o&&ku(n[0],n[1],o)&&(u=i<3?tt:u,i=1),r=th(r);++e<i;){var f=n[e];f&&t(r,f,e,u)}return r})}function Ui(t,r){return function(n,e){if(null==n)return n;if(!zf(n))return t(n,e);for(var i=n.length,u=r?i:-1,o=th(n);(r?u--:++u<i)&&!1!==e(o[u],u,o););return n}}function Pi(t){return function(r,n,e){for(var i=-1,u=th(r),o=e(r),f=o.length;f--;){var a=o[t?f:++i];if(!1===n(u[a],a,u))break}return r}}function Ci(t,r,n){function e(){return(this&&this!==Bn&&this instanceof e?u:t).apply(i?n:this,arguments)}var i=r&ct,u=$i(t);return e}function Ni(t){return function(r){var n=N(r=wa(r))?H(r):tt,e=n?n[0]:r.charAt(0),i=n?yi(n,1).join(""):r.slice(1);return e[t]()+i}}function zi(t){return function(r){return c(ys(Ja(r).replace(un,"")),t,"")}}function $i(t){return function(){var r=arguments;switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3]);case 5:return new t(r[0],r[1],r[2],r[3],r[4]);case 6:return new t(r[0],r[1],r[2],r[3],r[4],r[5]);case 7:return new t(r[0],r[1],r[2],r[3],r[4],r[5],r[6])}var n=ol(t.prototype),e=t.apply(n,r);return Xf(e)?e:n}}function Wi(t,r,e){function i(){for(var o=arguments.length,f=Ks(o),a=o,s=cu(i);a--;)f[a]=arguments[a];var h=o<3&&f[0]!==s&&f[o-1]!==s?[]:Y(f,s);return(o-=h.length)<e?Ji(t,r,qi,i.placeholder,tt,f,h,tt,tt,e-o):n(this&&this!==Bn&&this instanceof i?u:t,this,f)}var u=$i(t);return i}function Di(t){return function(r,n,e){var i=th(r);if(!zf(r)){var u=pu(n,3);r=ja(r),n=function(t){return u(i[t],t,i)}}var o=t(r,n,e);return o>-1?i[u?r[o]:o]:tt}}function Yi(t){return au(function(r){var n=r.length,e=n,i=G.prototype.thru;for(t&&r.reverse();e--;){var u=r[e];if("function"!=typeof u)throw new eh(et);if(i&&!o&&"wrapper"==lu(u))var o=new G([],!0)}for(e=o?e:n;++e<n;){var f=lu(u=r[e]),a="wrapper"==f?gl(u):tt;o=a&&Iu(a[0])&&a[1]==(_t|vt|mt|wt)&&!a[4].length&&1==a[9]?o[lu(a[0])].apply(o,a[3]):1==u.length&&Iu(u)?o[f]():o.thru(u)}return function(){var t=arguments,e=t[0];if(o&&1==t.length&&sc(e))return o.plant(e).value();for(var i=0,u=n?r[i].apply(this,t):e;++i<n;)u=r[i].call(this,u);return u}})}function qi(t,r,n,e,i,u,o,f,a,s){function h(){for(var m=arguments.length,y=Ks(m),_=m;_--;)y[_]=arguments[_];if(d)var w=cu(h),M=U(y,w);if(e&&(y=ki(y,e,i,d)),u&&(y=Si(y,u,o,d)),m-=M,d&&m<s){var b=Y(y,w);return Ji(t,r,qi,h.placeholder,n,y,b,f,a,s-m)}var B=c?n:this,A=p?B[t]:t;return m=y.length,f?y=$u(y,f):v&&m>1&&y.reverse(),l&&a<m&&(y.length=a),this&&this!==Bn&&this instanceof h&&(A=g||$i(A)),A.apply(B,y)}var l=r&_t,c=r&ct,p=r&pt,d=r&(vt|gt),v=r&Mt,g=p?tt:$i(t);return h}function Fi(t,r){return function(n,e){return ye(n,t,r(e),{})}}function Zi(t,r){return function(n,e){var i;if(n===tt&&e===tt)return r;if(n!==tt&&(i=n),e!==tt){if(i===tt)return e;"string"==typeof n||"string"==typeof e?(n=fi(n),e=fi(e)):(n=oi(n),e=oi(e)),i=t(n,e)}return i}}function Gi(t){return au(function(r){return r=h(r,I(pu())),He(function(e){var i=this;return t(r,function(t){return n(t,i,e)})})})}function Vi(t,r){var n=(r=r===tt?" ":fi(r)).length;if(n<2)return n?Ke(r,t):r;var e=Ke(r,Th(t/K(r)));return N(r)?yi(H(e),0,t).join(""):e.slice(0,t)}function Ki(t,r,e,i){function u(){for(var r=-1,a=arguments.length,s=-1,h=i.length,l=Ks(h+a),c=this&&this!==Bn&&this instanceof u?f:t;++s<h;)l[s]=i[s];for(;a--;)l[s++]=arguments[++r];return n(c,o?e:this,l)}var o=r&ct,f=$i(t);return u}function Hi(t){return function(r,n,e){return e&&"number"!=typeof e&&ku(r,n,e)&&(n=e=tt),r=da(r),n===tt?(n=r,r=0):n=da(n),e=e===tt?r<n?1:-1:da(e),Ve(r,n,e,t)}}function Xi(t){return function(r,n){return"string"==typeof r&&"string"==typeof n||(r=ma(r),n=ma(n)),t(r,n)}}function Ji(t,r,n,e,i,u,o,f,a,s){var h=r&vt,l=h?o:tt,c=h?tt:o,p=h?u:tt,d=h?tt:u;r|=h?mt:yt,(r&=~(h?yt:mt))&dt||(r&=~(ct|pt));var v=[t,r,i,p,l,d,c,f,a,s],g=n.apply(tt,v);return Iu(t)&&Ml(g,v),g.placeholder=e,Wu(g,t,r)}function Qi(t){var r=Qs[t];return function(t,n){if(t=ma(t),n=null==n?0:zh(va(n),292)){var e=(wa(t)+"e").split("e");return+((e=(wa(r(e[0]+"e"+(+e[1]+n)))+"e").split("e"))[0]+"e"+(+e[1]-n))}return r(t)}}function tu(t){return function(r){var n=_l(r);return n==Ft?W(r):n==Xt?Z(r):R(r,t(r))}}function ru(t,r,n,e,i,u,o,f){var a=r&pt;if(!a&&"function"!=typeof t)throw new eh(et);var s=e?e.length:0;if(s||(r&=~(mt|yt),e=i=tt),o=o===tt?o:Nh(va(o),0),f=f===tt?f:va(f),s-=i?i.length:0,r&yt){var h=e,l=i;e=i=tt}var c=a?tt:gl(t),p=[t,r,n,e,i,h,l,u,o,f];if(c&&Uu(p,c),t=p[0],r=p[1],n=p[2],e=p[3],i=p[4],!(f=p[9]=p[9]===tt?a?0:t.length:Nh(p[9]-s,0))&&r&(vt|gt)&&(r&=~(vt|gt)),r&&r!=ct)d=r==vt||r==gt?Wi(t,r,f):r!=mt&&r!=(ct|mt)||i.length?qi.apply(tt,p):Ki(t,r,n,e);else var d=Ci(t,r,n);return Wu((c?ll:Ml)(d,p),t,r)}function nu(t,r,n,e){return t===tt||Nf(t,oh[n])&&!sh.call(e,n)?r:t}function eu(t,r,n,e,i,u){return Xf(t)&&Xf(r)&&(u.set(r,t),Ne(t,r,tt,eu,u),u.delete(r)),t}function iu(t){return oa(t)?tt:t}function uu(t,r,n,e,i,u){var o=n&ht,f=t.length,a=r.length;if(f!=a&&!(o&&a>f))return!1;var s=u.get(t);if(s&&u.get(r))return s==r;var h=-1,l=!0,c=n&lt?new vn:tt;for(u.set(t,r),u.set(r,t);++h<f;){var p=t[h],v=r[h];if(e)var g=o?e(v,p,h,r,t,u):e(p,v,h,t,r,u);if(g!==tt){if(g)continue;l=!1;break}if(c){if(!d(r,function(t,r){if(!O(c,r)&&(p===t||i(p,t,n,e,u)))return c.push(r)})){l=!1;break}}else if(p!==v&&!i(p,v,n,e,u)){l=!1;break}}return u.delete(t),u.delete(r),l}function ou(t,r,n,e,i,u,o){switch(n){case ir:if(t.byteLength!=r.byteLength||t.byteOffset!=r.byteOffset)return!1;t=t.buffer,r=r.buffer;case er:return!(t.byteLength!=r.byteLength||!u(new yh(t),new yh(r)));case zt:case $t:case Zt:return Nf(+t,+r);case Dt:return t.name==r.name&&t.message==r.message;case Ht:case Jt:return t==r+"";case Ft:var f=W;case Xt:var a=e&ht;if(f||(f=F),t.size!=r.size&&!a)return!1;var s=o.get(t);if(s)return s==r;e|=lt,o.set(t,r);var h=uu(f(t),f(r),e,i,u,o);return o.delete(t),h;case Qt:if(il)return il.call(t)==il.call(r)}return!1}function fu(t,r,n,e,i,u){var o=n&ht,f=su(t),a=f.length;if(a!=su(r).length&&!o)return!1;for(var s=a;s--;){var h=f[s];if(!(o?h in r:sh.call(r,h)))return!1}var l=u.get(t);if(l&&u.get(r))return l==r;var c=!0;u.set(t,r),u.set(r,t);for(var p=o;++s<a;){var d=t[h=f[s]],v=r[h];if(e)var g=o?e(v,d,h,r,t,u):e(d,v,h,t,r,u);if(!(g===tt?d===v||i(d,v,n,e,u):g)){c=!1;break}p||(p="constructor"==h)}if(c&&!p){var m=t.constructor,y=r.constructor;m!=y&&"constructor"in t&&"constructor"in r&&!("function"==typeof m&&m instanceof m&&"function"==typeof y&&y instanceof y)&&(c=!1)}return u.delete(t),u.delete(r),c}function au(t){return Bl(Nu(t,tt,io),t+"")}function su(t){return le(t,ja,ml)}function hu(t){return le(t,La,yl)}function lu(t){for(var r=t.name+"",n=Xh[r],e=sh.call(Xh,r)?n.length:0;e--;){var i=n[e],u=i.func;if(null==u||u==t)return i.name}return r}function cu(t){return(sh.call(v,"placeholder")?v:t).placeholder}function pu(){var t=v.iteratee||As;return t=t===As?Te:t,arguments.length?t(arguments[0],arguments[1]):t}function du(t,r){var n=t.__data__;return Ru(r)?n["string"==typeof r?"string":"hash"]:n.map}function vu(t){for(var r=ja(t),n=r.length;n--;){var e=r[n],i=t[e];r[n]=[e,i,ju(i)]}return r}function gu(t,r){var n=C(t,r);return ke(n)?n:tt}function mu(t){var r=sh.call(t,Eh),n=t[Eh];try{t[Eh]=tt;var e=!0}catch(t){}var i=ch.call(t);return e&&(r?t[Eh]=n:delete t[Eh]),i}function yu(t,r,n){for(var e=-1,i=n.length;++e<i;){var u=n[e],o=u.size;switch(u.type){case"drop":t+=o;break;case"dropRight":r-=o;break;case"take":r=zh(r,t+o);break;case"takeRight":t=Nh(t,r-o)}}return{start:t,end:r}}function _u(t){var r=t.match(Ir);return r?r[1].split(Tr):[]}function wu(t,r,n){for(var e=-1,i=(r=mi(r,t)).length,u=!1;++e<i;){var o=qu(r[e]);if(!(u=null!=t&&n(t,o)))break;t=t[o]}return u||++e!=i?u:!!(i=null==t?0:t.length)&&Hf(i)&&Eu(o,i)&&(sc(t)||ac(t))}function Mu(t){var r=t.length,n=new t.constructor(r);return r&&"string"==typeof t[0]&&sh.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function bu(t){return"function"!=typeof t.constructor||Ou(t)?{}:ol(wh(t))}function Bu(t,r,n){var e=t.constructor;switch(r){case er:return wi(t);case zt:case $t:return new e(+t);case ir:return Mi(t,n);case ur:case or:case fr:case ar:case sr:case hr:case lr:case cr:case pr:return Ai(t,n);case Ft:return new e;case Zt:case Jt:return new e(t);case Ht:return bi(t);case Xt:return new e;case Qt:return Bi(t)}}function Au(t,r){var n=r.length;if(!n)return t;var e=n-1;return r[e]=(n>1?"& ":"")+r[e],r=r.join(n>2?", ":" "),t.replace(Rr,"{\n/* [wrapped with "+r+"] */\n")}function xu(t){return sc(t)||ac(t)||!!(Ah&&t&&t[Ah])}function Eu(t,r){var n=typeof t;return!!(r=null==r?Rt:r)&&("number"==n||"symbol"!=n&&zr.test(t))&&t>-1&&t%1==0&&t<r}function ku(t,r,n){if(!Xf(n))return!1;var e=typeof r;return!!("number"==e?zf(n)&&Eu(r,n.length):"string"==e&&r in n)&&Nf(n[r],t)}function Su(t,r){if(sc(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!sa(t))||(Br.test(t)||!br.test(t)||null!=r&&t in th(r))}function Ru(t){var r=typeof t;return"string"==r||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==t:null===t}function Iu(t){var r=lu(t),n=v[r];if("function"!=typeof n||!(r in X.prototype))return!1;if(t===n)return!0;var e=gl(n);return!!e&&t===e[0]}function Tu(t){return!!lh&&lh in t}function Ou(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||oh)}function ju(t){return t===t&&!Xf(t)}function Lu(t,r){return function(n){return null!=n&&(n[t]===r&&(r!==tt||t in th(n)))}}function Uu(t,r){var n=t[1],e=r[1],i=n|e,u=i<(ct|pt|_t),o=e==_t&&n==vt||e==_t&&n==wt&&t[7].length<=r[8]||e==(_t|wt)&&r[7].length<=r[8]&&n==vt;if(!u&&!o)return t;e&ct&&(t[2]=r[2],i|=n&ct?0:dt);var f=r[3];if(f){var a=t[3];t[3]=a?ki(a,f,r[4]):f,t[4]=a?Y(t[3],ot):r[4]}return(f=r[5])&&(a=t[5],t[5]=a?Si(a,f,r[6]):f,t[6]=a?Y(t[5],ot):r[6]),(f=r[7])&&(t[7]=f),e&_t&&(t[8]=null==t[8]?r[8]:zh(t[8],r[8])),null==t[9]&&(t[9]=r[9]),t[0]=r[0],t[1]=i,t}function Pu(t){var r=[];if(null!=t)for(var n in th(t))r.push(n);return r}function Cu(t){return ch.call(t)}function Nu(t,r,e){return r=Nh(r===tt?t.length-1:r,0),function(){for(var i=arguments,u=-1,o=Nh(i.length-r,0),f=Ks(o);++u<o;)f[u]=i[r+u];u=-1;for(var a=Ks(r+1);++u<r;)a[u]=i[u];return a[r]=e(f),n(t,this,a)}}function zu(t,r){return r.length<2?t:he(t,ri(r,0,-1))}function $u(t,r){for(var n=t.length,e=zh(r.length,n),i=Ri(t);e--;){var u=r[e];t[e]=Eu(u,n)?i[u]:tt}return t}function Wu(t,r,n){var e=r+"";return Bl(t,Au(e,Zu(_u(e),n)))}function Du(t){var r=0,n=0;return function(){var e=$h(),i=xt-(e-n);if(n=e,i>0){if(++r>=At)return arguments[0]}else r=0;return t.apply(tt,arguments)}}function Yu(t,r){var n=-1,e=t.length,i=e-1;for(r=r===tt?e:r;++n<r;){var u=Ge(n,i),o=t[u];t[u]=t[n],t[n]=o}return t.length=r,t}function qu(t){if("string"==typeof t||sa(t))return t;var r=t+"";return"0"==r&&1/t==-St?"-0":r}function Fu(t){if(null!=t){try{return ah.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Zu(t,r){return i(Ut,function(n){var e="_."+n[0];r&n[1]&&!a(t,e)&&t.push(e)}),t.sort()}function Gu(t){if(t instanceof X)return t.clone();var r=new G(t.__wrapped__,t.__chain__);return r.__actions__=Ri(t.__actions__),r.__index__=t.__index__,r.__values__=t.__values__,r}function Vu(t,r,n){r=(n?ku(t,r,n):r===tt)?1:Nh(va(r),0);var e=null==t?0:t.length;if(!e||r<1)return[];for(var i=0,u=0,o=Ks(Th(e/r));i<e;)o[u++]=ri(t,i,i+=r);return o}function Ku(t){for(var r=-1,n=null==t?0:t.length,e=0,i=[];++r<n;){var u=t[r];u&&(i[e++]=u)}return i}function Hu(){var t=arguments.length;if(!t)return[];for(var r=Ks(t-1),n=arguments[0],e=t;e--;)r[e-1]=arguments[e];return l(sc(n)?Ri(n):[n],oe(r,1))}function Xu(t,r,n){var e=null==t?0:t.length;return e?(r=n||r===tt?1:va(r),ri(t,r<0?0:r,e)):[]}function Ju(t,r,n){var e=null==t?0:t.length;return e?(r=n||r===tt?1:va(r),r=e-r,ri(t,0,r<0?0:r)):[]}function Qu(t,r){return t&&t.length?li(t,pu(r,3),!0,!0):[]}function to(t,r){return t&&t.length?li(t,pu(r,3),!0):[]}function ro(t,r,n,e){var i=null==t?0:t.length;return i?(n&&"number"!=typeof n&&ku(t,r,n)&&(n=0,e=i),ie(t,r,n,e)):[]}function no(t,r,n){var e=null==t?0:t.length;if(!e)return-1;var i=null==n?0:va(n);return i<0&&(i=Nh(e+i,0)),y(t,pu(r,3),i)}function eo(t,r,n){var e=null==t?0:t.length;if(!e)return-1;var i=e-1;return n!==tt&&(i=va(n),i=n<0?Nh(e+i,0):zh(i,e-1)),y(t,pu(r,3),i,!0)}function io(t){return(null==t?0:t.length)?oe(t,1):[]}function uo(t){return(null==t?0:t.length)?oe(t,St):[]}function oo(t,r){return(null==t?0:t.length)?(r=r===tt?1:va(r),oe(t,r)):[]}function fo(t){for(var r=-1,n=null==t?0:t.length,e={};++r<n;){var i=t[r];e[i[0]]=i[1]}return e}function ao(t){return t&&t.length?t[0]:tt}function so(t,r,n){var e=null==t?0:t.length;if(!e)return-1;var i=null==n?0:va(n);return i<0&&(i=Nh(e+i,0)),_(t,r,i)}function ho(t){return(null==t?0:t.length)?ri(t,0,-1):[]}function lo(t,r){return null==t?"":Ph.call(t,r)}function co(t){var r=null==t?0:t.length;return r?t[r-1]:tt}function po(t,r,n){var e=null==t?0:t.length;if(!e)return-1;var i=e;return n!==tt&&(i=(i=va(n))<0?Nh(e+i,0):zh(i,e-1)),r===r?V(t,r,i):y(t,M,i,!0)}function vo(t,r){return t&&t.length?$e(t,va(r)):tt}function go(t,r){return t&&t.length&&r&&r.length?Fe(t,r):t}function mo(t,r,n){return t&&t.length&&r&&r.length?Fe(t,r,pu(n,2)):t}function yo(t,r,n){return t&&t.length&&r&&r.length?Fe(t,r,tt,n):t}function _o(t,r){var n=[];if(!t||!t.length)return n;var e=-1,i=[],u=t.length;for(r=pu(r,3);++e<u;){var o=t[e];r(o,e,t)&&(n.push(o),i.push(e))}return Ze(t,i),n}function wo(t){return null==t?t:Yh.call(t)}function Mo(t,r,n){var e=null==t?0:t.length;return e?(n&&"number"!=typeof n&&ku(t,r,n)?(r=0,n=e):(r=null==r?0:va(r),n=n===tt?e:va(n)),ri(t,r,n)):[]}function bo(t,r){return ei(t,r)}function Bo(t,r,n){return ii(t,r,pu(n,2))}function Ao(t,r){var n=null==t?0:t.length;if(n){var e=ei(t,r);if(e<n&&Nf(t[e],r))return e}return-1}function xo(t,r){return ei(t,r,!0)}function Eo(t,r,n){return ii(t,r,pu(n,2),!0)}function ko(t,r){if(null==t?0:t.length){var n=ei(t,r,!0)-1;if(Nf(t[n],r))return n}return-1}function So(t){return t&&t.length?ui(t):[]}function Ro(t,r){return t&&t.length?ui(t,pu(r,2)):[]}function Io(t){var r=null==t?0:t.length;return r?ri(t,1,r):[]}function To(t,r,n){return t&&t.length?(r=n||r===tt?1:va(r),ri(t,0,r<0?0:r)):[]}function Oo(t,r,n){var e=null==t?0:t.length;return e?(r=n||r===tt?1:va(r),r=e-r,ri(t,r<0?0:r,e)):[]}function jo(t,r){return t&&t.length?li(t,pu(r,3),!1,!0):[]}function Lo(t,r){return t&&t.length?li(t,pu(r,3)):[]}function Uo(t){return t&&t.length?ai(t):[]}function Po(t,r){return t&&t.length?ai(t,pu(r,2)):[]}function Co(t,r){return r="function"==typeof r?r:tt,t&&t.length?ai(t,tt,r):[]}function No(t){if(!t||!t.length)return[];var r=0;return t=f(t,function(t){if($f(t))return r=Nh(t.length,r),!0}),S(r,function(r){return h(t,B(r))})}function zo(t,r){if(!t||!t.length)return[];var e=No(t);return null==r?e:h(e,function(t){return n(r,tt,t)})}function $o(t,r){return di(t||[],r||[],Yn)}function Wo(t,r){return di(t||[],r||[],Qe)}function Do(t){var r=v(t);return r.__chain__=!0,r}function Yo(t,r){return r(t),t}function qo(t,r){return r(t)}function Fo(){return Do(this)}function Zo(){return new G(this.value(),this.__chain__)}function Go(){this.__values__===tt&&(this.__values__=pa(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?tt:this.__values__[this.__index__++]}}function Vo(){return this}function Ko(t){for(var r,n=this;n instanceof A;){var e=Gu(n);e.__index__=0,e.__values__=tt,r?i.__wrapped__=e:r=e;var i=e;n=n.__wrapped__}return i.__wrapped__=t,r}function Ho(){var t=this.__wrapped__;if(t instanceof X){var r=t;return this.__actions__.length&&(r=new X(this)),(r=r.reverse()).__actions__.push({func:qo,args:[wo],thisArg:tt}),new G(r,this.__chain__)}return this.thru(wo)}function Xo(){return ci(this.__wrapped__,this.__actions__)}function Jo(t,r,n){var e=sc(t)?o:ne;return n&&ku(t,r,n)&&(r=tt),e(t,pu(r,3))}function Qo(t,r){return(sc(t)?f:ue)(t,pu(r,3))}function tf(t,r){return oe(ff(t,r),1)}function rf(t,r){return oe(ff(t,r),St)}function nf(t,r,n){return n=n===tt?1:va(n),oe(ff(t,r),n)}function ef(t,r){return(sc(t)?i:fl)(t,pu(r,3))}function uf(t,r){return(sc(t)?u:al)(t,pu(r,3))}function of(t,r,n,e){t=zf(t)?t:Za(t),n=n&&!e?va(n):0;var i=t.length;return n<0&&(n=Nh(i+n,0)),aa(t)?n<=i&&t.indexOf(r,n)>-1:!!i&&_(t,r,n)>-1}function ff(t,r){return(sc(t)?h:Ue)(t,pu(r,3))}function af(t,r,n,e){return null==t?[]:(sc(r)||(r=null==r?[]:[r]),n=e?tt:n,sc(n)||(n=null==n?[]:[n]),We(t,r,n))}function sf(t,r,n){var e=sc(t)?c:x,i=arguments.length<3;return e(t,pu(r,4),n,i,fl)}function hf(t,r,n){var e=sc(t)?p:x,i=arguments.length<3;return e(t,pu(r,4),n,i,al)}function lf(t,r){return(sc(t)?f:ue)(t,xf(pu(r,3)))}function cf(t){return(sc(t)?Un:Xe)(t)}function pf(t,r,n){return r=(n?ku(t,r,n):r===tt)?1:va(r),(sc(t)?$n:Je)(t,r)}function df(t){return(sc(t)?Wn:ti)(t)}function vf(t){if(null==t)return 0;if(zf(t))return aa(t)?K(t):t.length;var r=_l(t);return r==Ft||r==Xt?t.size:Oe(t).length}function gf(t,r,n){var e=sc(t)?d:ni;return n&&ku(t,r,n)&&(r=tt),e(t,pu(r,3))}function mf(t,r){if("function"!=typeof r)throw new eh(et);return t=va(t),function(){if(--t<1)return r.apply(this,arguments)}}function yf(t,r,n){return r=n?tt:r,r=t&&null==r?t.length:r,ru(t,_t,tt,tt,tt,tt,r)}function _f(t,r){var n;if("function"!=typeof r)throw new eh(et);return t=va(t),function(){return--t>0&&(n=r.apply(this,arguments)),t<=1&&(r=tt),n}}function wf(t,r,n){var e=ru(t,vt,tt,tt,tt,tt,tt,r=n?tt:r);return e.placeholder=wf.placeholder,e}function Mf(t,r,n){var e=ru(t,gt,tt,tt,tt,tt,tt,r=n?tt:r);return e.placeholder=Mf.placeholder,e}function bf(t,r,n){function e(r){var n=c,e=p;return c=p=tt,y=r,v=t.apply(e,n)}function i(t){return y=t,g=bl(f,r),_?e(t):v}function u(t){var n=t-y,e=r-(t-m);return w?zh(e,d-n):e}function o(t){var n=t-m,e=t-y;return m===tt||n>=r||n<0||w&&e>=d}function f(){var t=Xl();if(o(t))return a(t);g=bl(f,u(t))}function a(t){return g=tt,M&&c?e(t):(c=p=tt,v)}function s(){g!==tt&&dl(g),y=0,c=m=p=g=tt}function h(){return g===tt?v:a(Xl())}function l(){var t=Xl(),n=o(t);if(c=arguments,p=this,m=t,n){if(g===tt)return i(m);if(w)return g=bl(f,r),e(m)}return g===tt&&(g=bl(f,r)),v}var c,p,d,v,g,m,y=0,_=!1,w=!1,M=!0;if("function"!=typeof t)throw new eh(et);return r=ma(r)||0,Xf(n)&&(_=!!n.leading,d=(w="maxWait"in n)?Nh(ma(n.maxWait)||0,r):d,M="trailing"in n?!!n.trailing:M),l.cancel=s,l.flush=h,l}function Bf(t){return ru(t,Mt)}function Af(t,r){if("function"!=typeof t||null!=r&&"function"!=typeof r)throw new eh(et);var n=function(){var e=arguments,i=r?r.apply(this,e):e[0],u=n.cache;if(u.has(i))return u.get(i);var o=t.apply(this,e);return n.cache=u.set(i,o)||u,o};return n.cache=new(Af.Cache||nn),n}function xf(t){if("function"!=typeof t)throw new eh(et);return function(){var r=arguments;switch(r.length){case 0:return!t.call(this);case 1:return!t.call(this,r[0]);case 2:return!t.call(this,r[0],r[1]);case 3:return!t.call(this,r[0],r[1],r[2])}return!t.apply(this,r)}}function Ef(t){return _f(2,t)}function kf(t,r){if("function"!=typeof t)throw new eh(et);return r=r===tt?r:va(r),He(t,r)}function Sf(t,r){if("function"!=typeof t)throw new eh(et);return r=null==r?0:Nh(va(r),0),He(function(e){var i=e[r],u=yi(e,0,r);return i&&l(u,i),n(t,this,u)})}function Rf(t,r,n){var e=!0,i=!0;if("function"!=typeof t)throw new eh(et);return Xf(n)&&(e="leading"in n?!!n.leading:e,i="trailing"in n?!!n.trailing:i),bf(t,r,{leading:e,maxWait:r,trailing:i})}function If(t){return yf(t,1)}function Tf(t,r){return ec(gi(r),t)}function Of(){if(!arguments.length)return[];var t=arguments[0];return sc(t)?t:[t]}function jf(t){return Xn(t,st)}function Lf(t,r){return r="function"==typeof r?r:tt,Xn(t,st,r)}function Uf(t){return Xn(t,ft|st)}function Pf(t,r){return r="function"==typeof r?r:tt,Xn(t,ft|st,r)}function Cf(t,r){return null==r||Qn(t,r,ja(r))}function Nf(t,r){return t===r||t!==t&&r!==r}function zf(t){return null!=t&&Hf(t.length)&&!Vf(t)}function $f(t){return Jf(t)&&zf(t)}function Wf(t){return!0===t||!1===t||Jf(t)&&ce(t)==zt}function Df(t){return Jf(t)&&1===t.nodeType&&!oa(t)}function Yf(t){if(null==t)return!0;if(zf(t)&&(sc(t)||"string"==typeof t||"function"==typeof t.splice||lc(t)||gc(t)||ac(t)))return!t.length;var r=_l(t);if(r==Ft||r==Xt)return!t.size;if(Ou(t))return!Oe(t).length;for(var n in t)if(sh.call(t,n))return!1;return!0}function qf(t,r){return Be(t,r)}function Ff(t,r,n){var e=(n="function"==typeof n?n:tt)?n(t,r):tt;return e===tt?Be(t,r,tt,n):!!e}function Zf(t){if(!Jf(t))return!1;var r=ce(t);return r==Dt||r==Wt||"string"==typeof t.message&&"string"==typeof t.name&&!oa(t)}function Gf(t){return"number"==typeof t&&Uh(t)}function Vf(t){if(!Xf(t))return!1;var r=ce(t);return r==Yt||r==qt||r==Nt||r==Kt}function Kf(t){return"number"==typeof t&&t==va(t)}function Hf(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=Rt}function Xf(t){var r=typeof t;return null!=t&&("object"==r||"function"==r)}function Jf(t){return null!=t&&"object"==typeof t}function Qf(t,r){return t===r||Ee(t,r,vu(r))}function ta(t,r,n){return n="function"==typeof n?n:tt,Ee(t,r,vu(r),n)}function ra(t){return ua(t)&&t!=+t}function na(t){if(wl(t))throw new Xs(nt);return ke(t)}function ea(t){return null===t}function ia(t){return null==t}function ua(t){return"number"==typeof t||Jf(t)&&ce(t)==Zt}function oa(t){if(!Jf(t)||ce(t)!=Vt)return!1;var r=wh(t);if(null===r)return!0;var n=sh.call(r,"constructor")&&r.constructor;return"function"==typeof n&&n instanceof n&&ah.call(n)==ph}function fa(t){return Kf(t)&&t>=-Rt&&t<=Rt}function aa(t){return"string"==typeof t||!sc(t)&&Jf(t)&&ce(t)==Jt}function sa(t){return"symbol"==typeof t||Jf(t)&&ce(t)==Qt}function ha(t){return t===tt}function la(t){return Jf(t)&&_l(t)==rr}function ca(t){return Jf(t)&&ce(t)==nr}function pa(t){if(!t)return[];if(zf(t))return aa(t)?H(t):Ri(t);if(xh&&t[xh])return $(t[xh]());var r=_l(t);return(r==Ft?W:r==Xt?F:Za)(t)}function da(t){return t?(t=ma(t),t===St||t===-St?(t<0?-1:1)*It:t===t?t:0):0===t?t:0}function va(t){var r=da(t),n=r%1;return r===r?n?r-n:r:0}function ga(t){return t?Hn(va(t),0,Ot):0}function ma(t){if("number"==typeof t)return t;if(sa(t))return Tt;if(Xf(t)){var r="function"==typeof t.valueOf?t.valueOf():t;t=Xf(r)?r+"":r}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Er,"");var n=Pr.test(t);return n||Nr.test(t)?wn(t.slice(2),n?2:8):Ur.test(t)?Tt:+t}function ya(t){return Ii(t,La(t))}function _a(t){return t?Hn(va(t),-Rt,Rt):0===t?t:0}function wa(t){return null==t?"":fi(t)}function Ma(t,r){var n=ol(t);return null==r?n:Zn(n,r)}function ba(t,r){return m(t,pu(r,3),fe)}function Ba(t,r){return m(t,pu(r,3),ae)}function Aa(t,r){return null==t?t:sl(t,pu(r,3),La)}function xa(t,r){return null==t?t:hl(t,pu(r,3),La)}function Ea(t,r){return t&&fe(t,pu(r,3))}function ka(t,r){return t&&ae(t,pu(r,3))}function Sa(t){return null==t?[]:se(t,ja(t))}function Ra(t){return null==t?[]:se(t,La(t))}function Ia(t,r,n){var e=null==t?tt:he(t,r);return e===tt?n:e}function Ta(t,r){return null!=t&&wu(t,r,de)}function Oa(t,r){return null!=t&&wu(t,r,ve)}function ja(t){return zf(t)?Sn(t):Oe(t)}function La(t){return zf(t)?Sn(t,!0):je(t)}function Ua(t,r){var n={};return r=pu(r,3),fe(t,function(t,e,i){Vn(n,r(t,e,i),t)}),n}function Pa(t,r){var n={};return r=pu(r,3),fe(t,function(t,e,i){Vn(n,e,r(t,e,i))}),n}function Ca(t,r){return Na(t,xf(pu(r)))}function Na(t,r){if(null==t)return{};var n=h(hu(t),function(t){return[t]});return r=pu(r),Ye(t,n,function(t,n){return r(t,n[0])})}function za(t,r,n){var e=-1,i=(r=mi(r,t)).length;for(i||(i=1,t=tt);++e<i;){var u=null==t?tt:t[qu(r[e])];u===tt&&(e=i,u=n),t=Vf(u)?u.call(t):u}return t}function $a(t,r,n){return null==t?t:Qe(t,r,n)}function Wa(t,r,n,e){return e="function"==typeof e?e:tt,null==t?t:Qe(t,r,n,e)}function Da(t,r,n){var e=sc(t),u=e||lc(t)||gc(t);if(r=pu(r,4),null==n){var o=t&&t.constructor;n=u?e?new o:[]:Xf(t)&&Vf(o)?ol(wh(t)):{}}return(u?i:fe)(t,function(t,e,i){return r(n,t,e,i)}),n}function Ya(t,r){return null==t||si(t,r)}function qa(t,r,n){return null==t?t:hi(t,r,gi(n))}function Fa(t,r,n,e){return e="function"==typeof e?e:tt,null==t?t:hi(t,r,gi(n),e)}function Za(t){return null==t?[]:T(t,ja(t))}function Ga(t){return null==t?[]:T(t,La(t))}function Va(t,r,n){return n===tt&&(n=r,r=tt),n!==tt&&(n=(n=ma(n))===n?n:0),r!==tt&&(r=(r=ma(r))===r?r:0),Hn(ma(t),r,n)}function Ka(t,r,n){return r=da(r),n===tt?(n=r,r=0):n=da(n),t=ma(t),ge(t,r,n)}function Ha(t,r,n){if(n&&"boolean"!=typeof n&&ku(t,r,n)&&(r=n=tt),n===tt&&("boolean"==typeof r?(n=r,r=tt):"boolean"==typeof t&&(n=t,t=tt)),t===tt&&r===tt?(t=0,r=1):(t=da(t),r===tt?(r=t,t=0):r=da(r)),t>r){var e=t;t=r,r=e}if(n||t%1||r%1){var i=Dh();return zh(t+i*(r-t+_n("1e-"+((i+"").length-1))),r)}return Ge(t,r)}function Xa(t){return Dc(wa(t).toLowerCase())}function Ja(t){return(t=wa(t))&&t.replace($r,Pn).replace(on,"")}function Qa(t,r,n){t=wa(t),r=fi(r);var e=t.length,i=n=n===tt?e:Hn(va(n),0,e);return(n-=r.length)>=0&&t.slice(n,i)==r}function ts(t){return t=wa(t),t&&wr.test(t)?t.replace(yr,Cn):t}function rs(t){return t=wa(t),t&&xr.test(t)?t.replace(Ar,"\\$&"):t}function ns(t,r,n){t=wa(t);var e=(r=va(r))?K(t):0;if(!r||e>=r)return t;var i=(r-e)/2;return Vi(Oh(i),n)+t+Vi(Th(i),n)}function es(t,r,n){t=wa(t);var e=(r=va(r))?K(t):0;return r&&e<r?t+Vi(r-e,n):t}function is(t,r,n){t=wa(t);var e=(r=va(r))?K(t):0;return r&&e<r?Vi(r-e,n)+t:t}function us(t,r,n){return n||null==r?r=0:r&&(r=+r),Wh(wa(t).replace(kr,""),r||0)}function os(t,r,n){return r=(n?ku(t,r,n):r===tt)?1:va(r),Ke(wa(t),r)}function fs(){var t=arguments,r=wa(t[0]);return t.length<3?r:r.replace(t[1],t[2])}function as(t,r,n){return n&&"number"!=typeof n&&ku(t,r,n)&&(r=n=tt),(n=n===tt?Ot:n>>>0)?(t=wa(t),t&&("string"==typeof r||null!=r&&!dc(r))&&!(r=fi(r))&&N(t)?yi(H(t),0,n):t.split(r,n)):[]}function ss(t,r,n){return t=wa(t),n=null==n?0:Hn(va(n),0,t.length),r=fi(r),t.slice(n,n+r.length)==r}function hs(t,r,n){var e=v.templateSettings;n&&ku(t,r,n)&&(r=tt),t=wa(t),r=Mc({},r,e,nu);var i,u,o=Mc({},r.imports,e.imports,nu),f=ja(o),a=T(o,f),s=0,h=r.interpolate||Wr,l="__p += '",c=rh((r.escape||Wr).source+"|"+h.source+"|"+(h===Mr?jr:Wr).source+"|"+(r.evaluate||Wr).source+"|$","g"),p="//# sourceURL="+("sourceURL"in r?r.sourceURL:"lodash.templateSources["+ ++cn+"]")+"\n";t.replace(c,function(r,n,e,o,f,a){return e||(e=o),l+=t.slice(s,a).replace(Dr,P),n&&(i=!0,l+="' +\n__e("+n+") +\n'"),f&&(u=!0,l+="';\n"+f+";\n__p += '"),e&&(l+="' +\n((__t = ("+e+")) == null ? '' : __t) +\n'"),s=a+r.length,r}),l+="';\n";var d=r.variable;d||(l="with (obj) {\n"+l+"\n}\n"),l=(u?l.replace(dr,""):l).replace(vr,"$1").replace(gr,"$1;"),l="function("+(d||"obj")+") {\n"+(d?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(u?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+l+"return __p\n}";var g=Yc(function(){return Js(f,p+"return "+l).apply(tt,a)});if(g.source=l,Zf(g))throw g;return g}function ls(t){return wa(t).toLowerCase()}function cs(t){return wa(t).toUpperCase()}function ps(t,r,n){if((t=wa(t))&&(n||r===tt))return t.replace(Er,"");if(!t||!(r=fi(r)))return t;var e=H(t),i=H(r);return yi(e,j(e,i),L(e,i)+1).join("")}function ds(t,r,n){if((t=wa(t))&&(n||r===tt))return t.replace(Sr,"");if(!t||!(r=fi(r)))return t;var e=H(t);return yi(e,0,L(e,H(r))+1).join("")}function vs(t,r,n){if((t=wa(t))&&(n||r===tt))return t.replace(kr,"");if(!t||!(r=fi(r)))return t;var e=H(t);return yi(e,j(e,H(r))).join("")}function gs(t,r){var n=bt,e=Bt;if(Xf(r)){var i="separator"in r?r.separator:i;n="length"in r?va(r.length):n,e="omission"in r?fi(r.omission):e}var u=(t=wa(t)).length;if(N(t)){var o=H(t);u=o.length}if(n>=u)return t;var f=n-K(e);if(f<1)return e;var a=o?yi(o,0,f).join(""):t.slice(0,f);if(i===tt)return a+e;if(o&&(f+=a.length-f),dc(i)){if(t.slice(f).search(i)){var s,h=a;for(i.global||(i=rh(i.source,wa(Lr.exec(i))+"g")),i.lastIndex=0;s=i.exec(h);)var l=s.index;a=a.slice(0,l===tt?f:l)}}else if(t.indexOf(fi(i),f)!=f){var c=a.lastIndexOf(i);c>-1&&(a=a.slice(0,c))}return a+e}function ms(t){return t=wa(t),t&&_r.test(t)?t.replace(mr,Nn):t}function ys(t,r,n){return t=wa(t),r=n?tt:r,r===tt?z(t)?Q(t):g(t):t.match(r)||[]}function _s(t){var r=null==t?0:t.length,e=pu();return t=r?h(t,function(t){if("function"!=typeof t[1])throw new eh(et);return[e(t[0]),t[1]]}):[],He(function(e){for(var i=-1;++i<r;){var u=t[i];if(n(u[0],this,e))return n(u[1],this,e)}})}function ws(t){return Jn(Xn(t,ft))}function Ms(t){return function(){return t}}function bs(t,r){return null==t||t!==t?r:t}function Bs(t){return t}function As(t){return Te("function"==typeof t?t:Xn(t,ft))}function xs(t){return Pe(Xn(t,ft))}function Es(t,r){return Ce(t,Xn(r,ft))}function ks(t,r,n){var e=ja(r),u=se(r,e);null!=n||Xf(r)&&(u.length||!e.length)||(n=r,r=t,t=this,u=se(r,ja(r)));var o=!(Xf(n)&&"chain"in n&&!n.chain),f=Vf(t);return i(u,function(n){var e=r[n];t[n]=e,f&&(t.prototype[n]=function(){var r=this.__chain__;if(o||r){var n=t(this.__wrapped__);return(n.__actions__=Ri(this.__actions__)).push({func:e,args:arguments,thisArg:t}),n.__chain__=r,n}return e.apply(t,l([this.value()],arguments))})}),t}function Ss(){return Bn._===this&&(Bn._=dh),this}function Rs(){}function Is(t){return t=va(t),He(function(r){return $e(r,t)})}function Ts(t){return Su(t)?B(qu(t)):qe(t)}function Os(t){return function(r){return null==t?tt:he(t,r)}}function js(){return[]}function Ls(){return!1}function Us(){return{}}function Ps(){return""}function Cs(){return!0}function Ns(t,r){if((t=va(t))<1||t>Rt)return[];var n=Ot,e=zh(t,Ot);r=pu(r),t-=Ot;for(var i=S(e,r);++n<t;)r(n);return i}function zs(t){return sc(t)?h(t,qu):sa(t)?[t]:Ri(Al(wa(t)))}function $s(t){var r=++hh;return wa(t)+r}function Ws(t){return t&&t.length?ee(t,Bs,pe):tt}function Ds(t,r){return t&&t.length?ee(t,pu(r,2),pe):tt}function Ys(t){return b(t,Bs)}function qs(t,r){return b(t,pu(r,2))}function Fs(t){return t&&t.length?ee(t,Bs,Le):tt}function Zs(t,r){return t&&t.length?ee(t,pu(r,2),Le):tt}function Gs(t){return t&&t.length?k(t,Bs):0}function Vs(t,r){return t&&t.length?k(t,pu(r,2)):0}var Ks=(r=null==r?Bn:zn.defaults(Bn.Object(),r,zn.pick(Bn,ln))).Array,Hs=r.Date,Xs=r.Error,Js=r.Function,Qs=r.Math,th=r.Object,rh=r.RegExp,nh=r.String,eh=r.TypeError,ih=Ks.prototype,uh=Js.prototype,oh=th.prototype,fh=r["__core-js_shared__"],ah=uh.toString,sh=oh.hasOwnProperty,hh=0,lh=function(){var t=/[^.]+$/.exec(fh&&fh.keys&&fh.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),ch=oh.toString,ph=ah.call(th),dh=Bn._,vh=rh("^"+ah.call(sh).replace(Ar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),gh=En?r.Buffer:tt,mh=r.Symbol,yh=r.Uint8Array,_h=gh?gh.allocUnsafe:tt,wh=D(th.getPrototypeOf,th),Mh=th.create,bh=oh.propertyIsEnumerable,Bh=ih.splice,Ah=mh?mh.isConcatSpreadable:tt,xh=mh?mh.iterator:tt,Eh=mh?mh.toStringTag:tt,kh=function(){try{var t=gu(th,"defineProperty");return t({},"",{}),t}catch(t){}}(),Sh=r.clearTimeout!==Bn.clearTimeout&&r.clearTimeout,Rh=Hs&&Hs.now!==Bn.Date.now&&Hs.now,Ih=r.setTimeout!==Bn.setTimeout&&r.setTimeout,Th=Qs.ceil,Oh=Qs.floor,jh=th.getOwnPropertySymbols,Lh=gh?gh.isBuffer:tt,Uh=r.isFinite,Ph=ih.join,Ch=D(th.keys,th),Nh=Qs.max,zh=Qs.min,$h=Hs.now,Wh=r.parseInt,Dh=Qs.random,Yh=ih.reverse,qh=gu(r,"DataView"),Fh=gu(r,"Map"),Zh=gu(r,"Promise"),Gh=gu(r,"Set"),Vh=gu(r,"WeakMap"),Kh=gu(th,"create"),Hh=Vh&&new Vh,Xh={},Jh=Fu(qh),Qh=Fu(Fh),tl=Fu(Zh),rl=Fu(Gh),nl=Fu(Vh),el=mh?mh.prototype:tt,il=el?el.valueOf:tt,ul=el?el.toString:tt,ol=function(){function t(){}return function(r){if(!Xf(r))return{};if(Mh)return Mh(r);t.prototype=r;var n=new t;return t.prototype=tt,n}}();v.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:Mr,variable:"",imports:{_:v}},v.prototype=A.prototype,v.prototype.constructor=v,G.prototype=ol(A.prototype),G.prototype.constructor=G,X.prototype=ol(A.prototype),X.prototype.constructor=X,qr.prototype.clear=Fr,qr.prototype.delete=Zr,qr.prototype.get=Gr,qr.prototype.has=Vr,qr.prototype.set=Kr,Hr.prototype.clear=Xr,Hr.prototype.delete=Jr,Hr.prototype.get=Qr,Hr.prototype.has=tn,Hr.prototype.set=rn,nn.prototype.clear=en,nn.prototype.delete=fn,nn.prototype.get=an,nn.prototype.has=sn,nn.prototype.set=hn,vn.prototype.add=vn.prototype.push=gn,vn.prototype.has=mn,yn.prototype.clear=Mn,yn.prototype.delete=bn,yn.prototype.get=An,yn.prototype.has=xn,yn.prototype.set=kn;var fl=Ui(fe),al=Ui(ae,!0),sl=Pi(),hl=Pi(!0),ll=Hh?function(t,r){return Hh.set(t,r),t}:Bs,cl=kh?function(t,r){return kh(t,"toString",{configurable:!0,enumerable:!1,value:Ms(r),writable:!0})}:Bs,pl=He,dl=Sh||function(t){return Bn.clearTimeout(t)},vl=Gh&&1/F(new Gh([,-0]))[1]==St?function(t){return new Gh(t)}:Rs,gl=Hh?function(t){return Hh.get(t)}:Rs,ml=jh?function(t){return null==t?[]:(t=th(t),f(jh(t),function(r){return bh.call(t,r)}))}:js,yl=jh?function(t){for(var r=[];t;)l(r,ml(t)),t=wh(t);return r}:js,_l=ce;(qh&&_l(new qh(new ArrayBuffer(1)))!=ir||Fh&&_l(new Fh)!=Ft||Zh&&"[object Promise]"!=_l(Zh.resolve())||Gh&&_l(new Gh)!=Xt||Vh&&_l(new Vh)!=rr)&&(_l=function(t){var r=ce(t),n=r==Vt?t.constructor:tt,e=n?Fu(n):"";if(e)switch(e){case Jh:return ir;case Qh:return Ft;case tl:return"[object Promise]";case rl:return Xt;case nl:return rr}return r});var wl=fh?Vf:Ls,Ml=Du(ll),bl=Ih||function(t,r){return Bn.setTimeout(t,r)},Bl=Du(cl),Al=function(t){var r=Af(t,function(t){return n.size===ut&&n.clear(),t}),n=r.cache;return r}(function(t){var r=[];return 46===t.charCodeAt(0)&&r.push(""),t.replace(/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,function(t,n,e,i){r.push(e?i.replace(/\\(\\)?/g,"$1"):n||t)}),r}),xl=He(function(t,r){return $f(t)?re(t,oe(r,1,$f,!0)):[]}),El=He(function(t,r){var n=co(r);return $f(n)&&(n=tt),$f(t)?re(t,oe(r,1,$f,!0),pu(n,2)):[]}),kl=He(function(t,r){var n=co(r);return $f(n)&&(n=tt),$f(t)?re(t,oe(r,1,$f,!0),tt,n):[]}),Sl=He(function(t){var r=h(t,vi);return r.length&&r[0]===t[0]?me(r):[]}),Rl=He(function(t){var r=co(t),n=h(t,vi);return r===co(n)?r=tt:n.pop(),n.length&&n[0]===t[0]?me(n,pu(r,2)):[]}),Il=He(function(t){var r=co(t),n=h(t,vi);return(r="function"==typeof r?r:tt)&&n.pop(),n.length&&n[0]===t[0]?me(n,tt,r):[]}),Tl=He(go),Ol=au(function(t,r){var n=null==t?0:t.length,e=Kn(t,r);return Ze(t,h(r,function(t){return Eu(t,n)?+t:t}).sort(xi)),e}),jl=He(function(t){return ai(oe(t,1,$f,!0))}),Ll=He(function(t){var r=co(t);return $f(r)&&(r=tt),ai(oe(t,1,$f,!0),pu(r,2))}),Ul=He(function(t){var r=co(t);return r="function"==typeof r?r:tt,ai(oe(t,1,$f,!0),tt,r)}),Pl=He(function(t,r){return $f(t)?re(t,r):[]}),Cl=He(function(t){return pi(f(t,$f))}),Nl=He(function(t){var r=co(t);return $f(r)&&(r=tt),pi(f(t,$f),pu(r,2))}),zl=He(function(t){var r=co(t);return r="function"==typeof r?r:tt,pi(f(t,$f),tt,r)}),$l=He(No),Wl=He(function(t){var r=t.length,n=r>1?t[r-1]:tt;return n="function"==typeof n?(t.pop(),n):tt,zo(t,n)}),Dl=au(function(t){var r=t.length,n=r?t[0]:0,e=this.__wrapped__,i=function(r){return Kn(r,t)};return!(r>1||this.__actions__.length)&&e instanceof X&&Eu(n)?((e=e.slice(n,+n+(r?1:0))).__actions__.push({func:qo,args:[i],thisArg:tt}),new G(e,this.__chain__).thru(function(t){return r&&!t.length&&t.push(tt),t})):this.thru(i)}),Yl=ji(function(t,r,n){sh.call(t,n)?++t[n]:Vn(t,n,1)}),ql=Di(no),Fl=Di(eo),Zl=ji(function(t,r,n){sh.call(t,n)?t[n].push(r):Vn(t,n,[r])}),Gl=He(function(t,r,e){var i=-1,u="function"==typeof r,o=zf(t)?Ks(t.length):[];return fl(t,function(t){o[++i]=u?n(r,t,e):_e(t,r,e)}),o}),Vl=ji(function(t,r,n){Vn(t,n,r)}),Kl=ji(function(t,r,n){t[n?0:1].push(r)},function(){return[[],[]]}),Hl=He(function(t,r){if(null==t)return[];var n=r.length;return n>1&&ku(t,r[0],r[1])?r=[]:n>2&&ku(r[0],r[1],r[2])&&(r=[r[0]]),We(t,oe(r,1),[])}),Xl=Rh||function(){return Bn.Date.now()},Jl=He(function(t,r,n){var e=ct;if(n.length){var i=Y(n,cu(Jl));e|=mt}return ru(t,e,r,n,i)}),Ql=He(function(t,r,n){var e=ct|pt;if(n.length){var i=Y(n,cu(Ql));e|=mt}return ru(r,e,t,n,i)}),tc=He(function(t,r){return te(t,1,r)}),rc=He(function(t,r,n){return te(t,ma(r)||0,n)});Af.Cache=nn;var nc=pl(function(t,r){var e=(r=1==r.length&&sc(r[0])?h(r[0],I(pu())):h(oe(r,1),I(pu()))).length;return He(function(i){for(var u=-1,o=zh(i.length,e);++u<o;)i[u]=r[u].call(this,i[u]);return n(t,this,i)})}),ec=He(function(t,r){var n=Y(r,cu(ec));return ru(t,mt,tt,r,n)}),ic=He(function(t,r){var n=Y(r,cu(ic));return ru(t,yt,tt,r,n)}),uc=au(function(t,r){return ru(t,wt,tt,tt,tt,r)}),oc=Xi(pe),fc=Xi(function(t,r){return t>=r}),ac=we(function(){return arguments}())?we:function(t){return Jf(t)&&sh.call(t,"callee")&&!bh.call(t,"callee")},sc=Ks.isArray,hc=Rn?I(Rn):Me,lc=Lh||Ls,cc=In?I(In):be,pc=Tn?I(Tn):xe,dc=On?I(On):Se,vc=jn?I(jn):Re,gc=Ln?I(Ln):Ie,mc=Xi(Le),yc=Xi(function(t,r){return t<=r}),_c=Li(function(t,r){if(Ou(r)||zf(r))return void Ii(r,ja(r),t);for(var n in r)sh.call(r,n)&&Yn(t,n,r[n])}),wc=Li(function(t,r){Ii(r,La(r),t)}),Mc=Li(function(t,r,n,e){Ii(r,La(r),t,e)}),bc=Li(function(t,r,n,e){Ii(r,ja(r),t,e)}),Bc=au(Kn),Ac=He(function(t,r){t=th(t);var n=-1,e=r.length,i=e>2?r[2]:tt;for(i&&ku(r[0],r[1],i)&&(e=1);++n<e;)for(var u=r[n],o=La(u),f=-1,a=o.length;++f<a;){var s=o[f],h=t[s];(h===tt||Nf(h,oh[s])&&!sh.call(t,s))&&(t[s]=u[s])}return t}),xc=He(function(t){return t.push(tt,eu),n(Ic,tt,t)}),Ec=Fi(function(t,r,n){null!=r&&"function"!=typeof r.toString&&(r=ch.call(r)),t[r]=n},Ms(Bs)),kc=Fi(function(t,r,n){null!=r&&"function"!=typeof r.toString&&(r=ch.call(r)),sh.call(t,r)?t[r].push(n):t[r]=[n]},pu),Sc=He(_e),Rc=Li(function(t,r,n){Ne(t,r,n)}),Ic=Li(function(t,r,n,e){Ne(t,r,n,e)}),Tc=au(function(t,r){var n={};if(null==t)return n;var e=!1;r=h(r,function(r){return r=mi(r,t),e||(e=r.length>1),r}),Ii(t,hu(t),n),e&&(n=Xn(n,ft|at|st,iu));for(var i=r.length;i--;)si(n,r[i]);return n}),Oc=au(function(t,r){return null==t?{}:De(t,r)}),jc=tu(ja),Lc=tu(La),Uc=zi(function(t,r,n){return r=r.toLowerCase(),t+(n?Xa(r):r)}),Pc=zi(function(t,r,n){return t+(n?"-":"")+r.toLowerCase()}),Cc=zi(function(t,r,n){return t+(n?" ":"")+r.toLowerCase()}),Nc=Ni("toLowerCase"),zc=zi(function(t,r,n){return t+(n?"_":"")+r.toLowerCase()}),$c=zi(function(t,r,n){return t+(n?" ":"")+Dc(r)}),Wc=zi(function(t,r,n){return t+(n?" ":"")+r.toUpperCase()}),Dc=Ni("toUpperCase"),Yc=He(function(t,r){try{return n(t,tt,r)}catch(t){return Zf(t)?t:new Xs(t)}}),qc=au(function(t,r){return i(r,function(r){r=qu(r),Vn(t,r,Jl(t[r],t))}),t}),Fc=Yi(),Zc=Yi(!0),Gc=He(function(t,r){return function(n){return _e(n,t,r)}}),Vc=He(function(t,r){return function(n){return _e(t,n,r)}}),Kc=Gi(h),Hc=Gi(o),Xc=Gi(d),Jc=Hi(),Qc=Hi(!0),tp=Zi(function(t,r){return t+r},0),rp=Qi("ceil"),np=Zi(function(t,r){return t/r},1),ep=Qi("floor"),ip=Zi(function(t,r){return t*r},1),up=Qi("round"),op=Zi(function(t,r){return t-r},0);return v.after=mf,v.ary=yf,v.assign=_c,v.assignIn=wc,v.assignInWith=Mc,v.assignWith=bc,v.at=Bc,v.before=_f,v.bind=Jl,v.bindAll=qc,v.bindKey=Ql,v.castArray=Of,v.chain=Do,v.chunk=Vu,v.compact=Ku,v.concat=Hu,v.cond=_s,v.conforms=ws,v.constant=Ms,v.countBy=Yl,v.create=Ma,v.curry=wf,v.curryRight=Mf,v.debounce=bf,v.defaults=Ac,v.defaultsDeep=xc,v.defer=tc,v.delay=rc,v.difference=xl,v.differenceBy=El,v.differenceWith=kl,v.drop=Xu,v.dropRight=Ju,v.dropRightWhile=Qu,v.dropWhile=to,v.fill=ro,v.filter=Qo,v.flatMap=tf,v.flatMapDeep=rf,v.flatMapDepth=nf,v.flatten=io,v.flattenDeep=uo,v.flattenDepth=oo,v.flip=Bf,v.flow=Fc,v.flowRight=Zc,v.fromPairs=fo,v.functions=Sa,v.functionsIn=Ra,v.groupBy=Zl,v.initial=ho,v.intersection=Sl,v.intersectionBy=Rl,v.intersectionWith=Il,v.invert=Ec,v.invertBy=kc,v.invokeMap=Gl,v.iteratee=As,v.keyBy=Vl,v.keys=ja,v.keysIn=La,v.map=ff,v.mapKeys=Ua,v.mapValues=Pa,v.matches=xs,v.matchesProperty=Es,v.memoize=Af,v.merge=Rc,v.mergeWith=Ic,v.method=Gc,v.methodOf=Vc,v.mixin=ks,v.negate=xf,v.nthArg=Is,v.omit=Tc,v.omitBy=Ca,v.once=Ef,v.orderBy=af,v.over=Kc,v.overArgs=nc,v.overEvery=Hc,v.overSome=Xc,v.partial=ec,v.partialRight=ic,v.partition=Kl,v.pick=Oc,v.pickBy=Na,v.property=Ts,v.propertyOf=Os,v.pull=Tl,v.pullAll=go,v.pullAllBy=mo,v.pullAllWith=yo,v.pullAt=Ol,v.range=Jc,v.rangeRight=Qc,v.rearg=uc,v.reject=lf,v.remove=_o,v.rest=kf,v.reverse=wo,v.sampleSize=pf,v.set=$a,v.setWith=Wa,v.shuffle=df,v.slice=Mo,v.sortBy=Hl,v.sortedUniq=So,v.sortedUniqBy=Ro,v.split=as,v.spread=Sf,v.tail=Io,v.take=To,v.takeRight=Oo,v.takeRightWhile=jo,v.takeWhile=Lo,v.tap=Yo,v.throttle=Rf,v.thru=qo,v.toArray=pa,v.toPairs=jc,v.toPairsIn=Lc,v.toPath=zs,v.toPlainObject=ya,v.transform=Da,v.unary=If,v.union=jl,v.unionBy=Ll,v.unionWith=Ul,v.uniq=Uo,v.uniqBy=Po,v.uniqWith=Co,v.unset=Ya,v.unzip=No,v.unzipWith=zo,v.update=qa,v.updateWith=Fa,v.values=Za,v.valuesIn=Ga,v.without=Pl,v.words=ys,v.wrap=Tf,v.xor=Cl,v.xorBy=Nl,v.xorWith=zl,v.zip=$l,v.zipObject=$o,v.zipObjectDeep=Wo,v.zipWith=Wl,v.entries=jc,v.entriesIn=Lc,v.extend=wc,v.extendWith=Mc,ks(v,v),v.add=tp,v.attempt=Yc,v.camelCase=Uc,v.capitalize=Xa,v.ceil=rp,v.clamp=Va,v.clone=jf,v.cloneDeep=Uf,v.cloneDeepWith=Pf,v.cloneWith=Lf,v.conformsTo=Cf,v.deburr=Ja,v.defaultTo=bs,v.divide=np,v.endsWith=Qa,v.eq=Nf,v.escape=ts,v.escapeRegExp=rs,v.every=Jo,v.find=ql,v.findIndex=no,v.findKey=ba,v.findLast=Fl,v.findLastIndex=eo,v.findLastKey=Ba,v.floor=ep,v.forEach=ef,v.forEachRight=uf,v.forIn=Aa,v.forInRight=xa,v.forOwn=Ea,v.forOwnRight=ka,v.get=Ia,v.gt=oc,v.gte=fc,v.has=Ta,v.hasIn=Oa,v.head=ao,v.identity=Bs,v.includes=of,v.indexOf=so,v.inRange=Ka,v.invoke=Sc,v.isArguments=ac,v.isArray=sc,v.isArrayBuffer=hc,v.isArrayLike=zf,v.isArrayLikeObject=$f,v.isBoolean=Wf,v.isBuffer=lc,v.isDate=cc,v.isElement=Df,v.isEmpty=Yf,v.isEqual=qf,v.isEqualWith=Ff,v.isError=Zf,v.isFinite=Gf,v.isFunction=Vf,v.isInteger=Kf,v.isLength=Hf,v.isMap=pc,v.isMatch=Qf,v.isMatchWith=ta,v.isNaN=ra,v.isNative=na,v.isNil=ia,v.isNull=ea,v.isNumber=ua,v.isObject=Xf,v.isObjectLike=Jf,v.isPlainObject=oa,v.isRegExp=dc,v.isSafeInteger=fa,v.isSet=vc,v.isString=aa,v.isSymbol=sa,v.isTypedArray=gc,v.isUndefined=ha,v.isWeakMap=la,v.isWeakSet=ca,v.join=lo,v.kebabCase=Pc,v.last=co,v.lastIndexOf=po,v.lowerCase=Cc,v.lowerFirst=Nc,v.lt=mc,v.lte=yc,v.max=Ws,v.maxBy=Ds,v.mean=Ys,v.meanBy=qs,v.min=Fs,v.minBy=Zs,v.stubArray=js,v.stubFalse=Ls,v.stubObject=Us,v.stubString=Ps,v.stubTrue=Cs,v.multiply=ip,v.nth=vo,v.noConflict=Ss,v.noop=Rs,v.now=Xl,v.pad=ns,v.padEnd=es,v.padStart=is,v.parseInt=us,v.random=Ha,v.reduce=sf,v.reduceRight=hf,v.repeat=os,v.replace=fs,v.result=za,v.round=up,v.runInContext=t,v.sample=cf,v.size=vf,v.snakeCase=zc,v.some=gf,v.sortedIndex=bo,v.sortedIndexBy=Bo,v.sortedIndexOf=Ao,v.sortedLastIndex=xo,v.sortedLastIndexBy=Eo,v.sortedLastIndexOf=ko,v.startCase=$c,v.startsWith=ss,v.subtract=op,v.sum=Gs,v.sumBy=Vs,v.template=hs,v.times=Ns,v.toFinite=da,v.toInteger=va,v.toLength=ga,v.toLower=ls,v.toNumber=ma,v.toSafeInteger=_a,v.toString=wa,v.toUpper=cs,v.trim=ps,v.trimEnd=ds,v.trimStart=vs,v.truncate=gs,v.unescape=ms,v.uniqueId=$s,v.upperCase=Wc,v.upperFirst=Dc,v.each=ef,v.eachRight=uf,v.first=ao,ks(v,function(){var t={};return fe(v,function(r,n){sh.call(v.prototype,n)||(t[n]=r)}),t}(),{chain:!1}),v.VERSION="4.17.10",i(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){v[t].placeholder=v}),i(["drop","take"],function(t,r){X.prototype[t]=function(n){n=n===tt?1:Nh(va(n),0);var e=this.__filtered__&&!r?new X(this):this.clone();return e.__filtered__?e.__takeCount__=zh(n,e.__takeCount__):e.__views__.push({size:zh(n,Ot),type:t+(e.__dir__<0?"Right":"")}),e},X.prototype[t+"Right"]=function(r){return this.reverse()[t](r).reverse()}}),i(["filter","map","takeWhile"],function(t,r){var n=r+1,e=n==Et||3==n;X.prototype[t]=function(t){var r=this.clone();return r.__iteratees__.push({iteratee:pu(t,3),type:n}),r.__filtered__=r.__filtered__||e,r}}),i(["head","last"],function(t,r){var n="take"+(r?"Right":"");X.prototype[t]=function(){return this[n](1).value()[0]}}),i(["initial","tail"],function(t,r){var n="drop"+(r?"":"Right");X.prototype[t]=function(){return this.__filtered__?new X(this):this[n](1)}}),X.prototype.compact=function(){return this.filter(Bs)},X.prototype.find=function(t){return this.filter(t).head()},X.prototype.findLast=function(t){return this.reverse().find(t)},X.prototype.invokeMap=He(function(t,r){return"function"==typeof t?new X(this):this.map(function(n){return _e(n,t,r)})}),X.prototype.reject=function(t){return this.filter(xf(pu(t)))},X.prototype.slice=function(t,r){t=va(t);var n=this;return n.__filtered__&&(t>0||r<0)?new X(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),r!==tt&&(n=(r=va(r))<0?n.dropRight(-r):n.take(r-t)),n)},X.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},X.prototype.toArray=function(){return this.take(Ot)},fe(X.prototype,function(t,r){var n=/^(?:filter|find|map|reject)|While$/.test(r),e=/^(?:head|last)$/.test(r),i=v[e?"take"+("last"==r?"Right":""):r],u=e||/^find/.test(r);i&&(v.prototype[r]=function(){var r=this.__wrapped__,o=e?[1]:arguments,f=r instanceof X,a=o[0],s=f||sc(r),h=function(t){var r=i.apply(v,l([t],o));return e&&c?r[0]:r};s&&n&&"function"==typeof a&&1!=a.length&&(f=s=!1);var c=this.__chain__,p=!!this.__actions__.length,d=u&&!c,g=f&&!p;if(!u&&s){r=g?r:new X(this);var m=t.apply(r,o);return m.__actions__.push({func:qo,args:[h],thisArg:tt}),new G(m,c)}return d&&g?t.apply(this,o):(m=this.thru(h),d?e?m.value()[0]:m.value():m)})}),i(["pop","push","shift","sort","splice","unshift"],function(t){var r=ih[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",e=/^(?:pop|shift)$/.test(t);v.prototype[t]=function(){var t=arguments;if(e&&!this.__chain__){var i=this.value();return r.apply(sc(i)?i:[],t)}return this[n](function(n){return r.apply(sc(n)?n:[],t)})}}),fe(X.prototype,function(t,r){var n=v[r];if(n){var e=n.name+"";(Xh[e]||(Xh[e]=[])).push({name:r,func:n})}}),Xh[qi(tt,pt).name]=[{name:"wrapper",func:tt}],X.prototype.clone=J,X.prototype.reverse=Or,X.prototype.value=Yr,v.prototype.at=Dl,v.prototype.chain=Fo,v.prototype.commit=Zo,v.prototype.next=Go,v.prototype.plant=Ko,v.prototype.reverse=Ho,v.prototype.toJSON=v.prototype.valueOf=v.prototype.value=Xo,v.prototype.first=v.prototype.head,xh&&(v.prototype[xh]=Vo),v}();"function"==typeof tt&&"object"==typeof tt.amd&&tt.amd?Bn._=zn:xn?((xn.exports=zn)._=zn,An._=zn):Bn._=zn}).call(commonjsGlobal)}),lodash_1=lodash.reduce,lodash_2=lodash.isUndefined,lodash_3=lodash.isString,lodash_4=lodash.every,lodash_5=lodash.map,lodash$2=Object.freeze({default:lodash,__moduleExports:lodash,reduce:lodash_1,isUndefined:lodash_2,isString:lodash_3,every:lodash_4,map:lodash_5}),require$$0$1=lodash$2&&lodash||lodash$2,src=createCommonjsModule(function(t){const{reduce:reduce,isUndefined:isUndefined,isString:isString,every:every,map:map}=require$$0$1,r=[3077398253,3995603712,2243735041,1261992695],n=`\ndozmarbinwansamlitsighidfidlissogdirwacsabwissibrigsoldopmodfoglidhopdardorlorhodfolrintogsilmirholpaslacrovlivdalsatlibtabhanticpidtorbolfosdotlosdilforpilramtirwintadbicdifrocwidbisdasmidloprilnardapmolsanlocnovsitnidtipsicropwitnatpanminritpodmottamtolsavposnapnopsomfinfonbanmorworsipronnorbotwicsocwatdolmagpicdavbidbaltimtasmalligsivtagpadsaldivdactansidfabtarmonranniswolmispallasdismaprabtobrollatlonnodnavfignomnibpagsopralbilhaddocridmocpacravripfaltodtiltinhapmicfanpattaclabmogsimsonpinlomrictapfirhasbosbatpochactidhavsaplindibhosdabbitbarracparloddosbortochilmactomdigfilfasmithobharmighinradmashalraglagfadtopmophabnilnosmilfopfamdatnoldinhatnacrisfotribhocnimlarfitwalrapsarnalmoslandondanladdovrivbacpollaptalpitnambonrostonfodponsovnocsorlavmatmipfip`,e=`\nzodnecbudwessevpersutletfulpensytdurwepserwylsunrypsyxdyrnuphebpeglupdepdysputlughecryttyvsydnexlunmeplutseppesdelsulpedtemledtulmetwenbynhexfebpyldulhetmevruttylwydtepbesdexsefwycburderneppurrysrebdennutsubpetrulsynregtydsupsemwynrecmegnetsecmulnymtevwebsummutnyxrextebfushepbenmuswyxsymselrucdecwexsyrwetdylmynmesdetbetbeltuxtugmyrpelsyptermebsetdutdegtexsurfeltudnuxruxrenwytnubmedlytdusnebrumtynseglyxpunresredfunrevrefmectedrusbexlebduxrynnumpyxrygryxfeptyrtustyclegnemfermertenlusnussyltecmexpubrymtucfyllepdebbermughuttunbylsudpemdevlurdefbusbeprunmelpexdytbyttyplevmylwedducfurfexnulluclennerlexrupnedlecrydlydfenwelnydhusrelrudneshesfetdesretdunlernyrsebhulrylludremlysfynwerrycsugnysnyllyndyndemluxfedsedbecmunlyrtesmudnytbyrsenwegfyrmurtelreptegpecnelnevfes`.match(/.{1,3}/g),i=n.match(/.{1,3}/g),u=(t,r)=>t[r],o=t=>t.length,f=t=>t.length-1,a=(t,r)=>t.indexOf(r),s=t=>t%2!=0,h=t=>!s(t),l=t=>Array.from(Array(t),(t,r)=>r),c=t=>u(i,t),p=t=>u(e,t),d=t=>[...e,...i].includes(t),v=t=>e.includes(t),g=t=>i.includes(t),m=t=>a(i,t),y=t=>a(e,t),_=t=>parseInt(t,2).toString(10),w=t=>t.toString(2),M=t=>w(t).padStart(8,"0"),b=t=>t.replace(/[\^~-]/g,"").match(/.{1,3}/g),B=t=>{if(t>=65536&&t<=4294967295){const r=x(t-65536)+65536;return r}if(t>=4294967296&&t<=0x10000000000000000){const r=new bn$1(t),n=r.and(4294967295),e=r.and("18446744069414584000");return e.or(B(n)).toNumber()}return t},A=t=>{if(t>=65536&&t<=4294967295){const r=new bn$1(E(t-65536)),n=r.add(new bn$1(65536)).toNumber();return n}if(t>=4294967296&&t<=bn(0x10000000000000000)){const r=new bn$1(t),n=r.and(new bn$1("0xFFFFFFFF")),e=r.and(new bn$1("0xffffffff00000000")),i=e.or(A(n));return i.toNumber()}return t},x=t=>{let r=[t%65535,t/65535];for(var n=0;n<4;n++)r=k(n,r[0],r[1]);const e=65535*r[0]+r[1];return e},E=t=>{let r=[t%65535,t/65535];for(var n=3;n>-1;n--)r=S(n,r[0],r[1]);const e=new bn$1(65535);const i=e.mul(new bn$1(r[0])).add(new bn$1(r[1]));return i.toNumber()},k=(t,n,e)=>{n=Math.floor(n);const i=[e,0];const u=new bn$1(h(t)?65535:65536);const o=new bn$1(R(r[t],2,e));const f=o.add(new bn$1(n)).mod(u);i[1]=f.toNumber();return i},S=(t,n,e)=>{n=Math.floor(n);const i=[e,0];const u=new bn$1(h(t)?65535:65536);const o=new bn$1(R(r[t],2,e));const f=new bn$1(u+n);const a=f.sub(o.mod(u)).mod(u).toString();i[1]=a;return i},R=(t,r,n)=>{const e=255&n;const i=(65280&n)/256;const u=I(String.fromCharCode(e)+String.fromCharCode(i),t);return u},I=(t,r)=>{r||(r=0);const n=new bn$1(3432918353);const e=new bn$1(461845907);const i=4294967295;const u=new bn$1(o(t));let f=new bn$1(r);let a;const s=4294967292&u;for(var h=0;h<s;h+=4){var l=t.charCodeAt(h+3)?t.charCodeAt(h+3):0;a=bn(255&t.charCodeAt(h))|(255&t.charCodeAt(h+1))<<8|(255&t.charCodeAt(h+2))<<16|l<<24,a=(a*=n)<<15|(4294967295&a)>>17,f=5*(f=(f^=a*=e)<<13|(4294967295&f)>>19)+3864292196}a=0;const c=3&u;3==c&&(a=(255&t.charCodeAt(s+2))<<16);3!=c&&2!=c||(a|=(255&t.charCodeAt(s+1))<<8);if(3==c||2==c||1==c){a|=255&t.charCodeAt(s),a=new bn$1(a*n);var p=new bn$1(a.and(new bn$1(i)).shrn(17));a=(a=a.shln(15).or(p)).mul(e),f=f.xor(a)}f=f.xor(u);f=f.xor(f.and(new bn$1(i)).shrn(16));f=f.mul(new bn$1(2246822507));f=f.xor(f.and(new bn$1(i)).shrn(13));f=f.mul(new bn$1(3266489909));f=f.xor(f.and(new bn$1(i)).shrn(16));return f.and(new bn$1(i)).toNumber()},T=t=>{const r=o(b(t));if(r<=1)return"galaxy";if(r<=2)return"star";if(r<=4)return"planet";if(r<=8)return"moon";if(r<=16)return"comet";return"invalid"},O=t=>{const r=o(w(t));if(r<=8)return"galaxy";if(r<=16)return"star";if(r<=32)return"planet";if(r<=64)return"moon";if(r<=128)return"comet";return"invalid"},j=t=>{const r=o(w(t));if(r<=8)return P(t);if(r<=16)return C(t);if(r<=32)return N(t);r<=64&&console.error("Convert to moon not currently supported.");r<=128&&console.error("Convert to comet not currently supported.");return"invalid"},L=(t,r)=>{isUndefined(r)&&(r=!0);if(!U(t))return;isString(t)&&(t=b(t));const n=reduce(t,(r,n,e)=>s(e)||1===o(t)?r+M(y(n)):r+M(m(n)),"");const e=_(n);return r?A(e):e},U=t=>{const r=b(t);if(s(o(r))&&1!==o(r))return!1;const n=map(r,(t,n)=>s(n)||1===o(r)?v(t):g(t));return every(n,t=>!0===t)},P=t=>z(t,1),C=t=>z(t,2),N=(t,r)=>{isUndefined(r)&&(r=!0);return z(t,4,r)},z=(t,r,n)=>{isUndefined(n)&&(n=!0);r||(r=t<256?1:t<65536?2:4);4===r&&n&&(t=B(t));const e=reduce(l(r),(r,n)=>{const e=Math.floor(t%256);t/=256;const i=s(n)?c(e):p(e);return r=2===n?i+"-"+r:i+r},"");return e};t.exports={patp2add:L,add2patp:j,tierOfpatp:T,tierOfadd:O,toGalaxyName:P,toStarName:C,toPlanetName:N,isValidName:U,_add2patp:z,_getsuffix:p,_muk:R,_feen:B,_fend:A,_teil:E,_getAt:u,_len:o,_lid:f,_indexOf:a,_isOdd:s,_isEven:h,_seq:l,_getPrefix:c,_getSuffix:p,_doesExist:d,_doesSuffixExist:v,_doesPrefixExist:g,_getPrefixIndex:m,_getSuffixIndex:y,_bin2dec:_,_dec2bin:w,_syl2bin:M}}),src_1=src.patp2add,src_2=src.add2patp,src_3=src.tierOfpatp,src_4=src.tierOfadd,src_5=src.toGalaxyName,src_6=src.toStarName,src_7=src.toPlanetName,src_8=src.isValidName,src_9=src._add2patp,src_10=src._getsuffix,src_11=src._muk,src_12=src._feen,src_13=src._fend,src_14=src._teil,src_15=src._getAt,src_16=src._len,src_17=src._lid,src_18=src._indexOf,src_19=src._isOdd,src_20=src._isEven,src_21=src._seq,src_22=src._getPrefix,src_23=src._getSuffix,src_24=src._doesExist,src_25=src._doesSuffixExist,src_26=src._doesPrefixExist,src_27=src._getPrefixIndex,src_28=src._getSuffixIndex,src_29=src._bin2dec,src_30=src._dec2bin,src_31=src._syl2bin;export{src_1 as patp2add,src_2 as add2patp,src_3 as tierOfpatp,src_4 as tierOfadd,src_5 as toGalaxyName,src_6 as toStarName,src_7 as toPlanetName,src_8 as isValidName,src_9 as _add2patp,src_10 as _getsuffix,src_11 as _muk,src_12 as _feen,src_13 as _fend,src_14 as _teil,src_15 as _getAt,src_16 as _len,src_17 as _lid,src_18 as _indexOf,src_19 as _isOdd,src_20 as _isEven,src_21 as _seq,src_22 as _getPrefix,src_23 as _getSuffix,src_24 as _doesExist,src_25 as _doesSuffixExist,src_26 as _doesPrefixExist,src_27 as _getPrefixIndex,src_28 as _getSuffixIndex,src_29 as _bin2dec,src_30 as _dec2bin,src_31 as _syl2bin};export default src; diff --git a/gulpfile.js b/gulpfile.js @@ -0,0 +1,58 @@ +var gulp = require('gulp'); + +var rollup = require('rollup-stream'); +var source = require('vinyl-source-stream'); + +var babel = require('rollup-plugin-babel'); +var resolve = require('rollup-plugin-node-resolve'); +var commonjs = require('rollup-plugin-commonjs'); +var replace = require('rollup-plugin-replace'); +var json = require('rollup-plugin-json'); +var builtins = require('rollup-plugin-node-builtins'); +var rootImport = require('rollup-plugin-root-import'); +var globals = require('rollup-plugin-node-globals'); +var uglify = require('rollup-plugin-uglify-es'); + +var cache; + +gulp.task('default', function(cb) { + return rollup({ + input: './src/index.js', + cache: cache, + format: "es", + plugins: [ + resolve(), + commonjs({ + namedExports: { + 'node_modules/lodash/lodash.js': [ + 'reduce', + 'isUndefined', + 'isString', + 'every', + 'map' + ] + } + }), + babel({ + plugins: ['babel-plugin-lodash'], + ignore: ['node_modules/**', 'test/**'] + }), + json(), + globals(), + builtins(), + uglify(), + ] + }).on('bundle', function(bundle){ cache = bundle; }) + .on('error', function(e){ + console.log(e); + cb(); + }) + .pipe(source('index.js')) + .pipe(gulp.dest('./dist')) + .on('end', cb); +}); + + +// gulp.task('watch', gulp.series('default', function() { +// gulp.watch('src/**/*.js', gulp.parallel('bundle-js')); +// })); diff --git a/index.js b/index.js @@ -1,439 +0,0 @@ -'use strict' - -/* - * Utility methods - */ - -// var bn = require('bignum') -const bnjs = require('bn.js') -const { reduce, isUndefined, isString, every, map } = require('lodash') - -const raku = [ - 3077398253, - 3995603712, - 2243735041, - 1261992695, -] - -const pre = ` -dozmarbinwansamlitsighidfidlissogdirwacsabwissib\ -rigsoldopmodfoglidhopdardorlorhodfolrintogsilmir\ -holpaslacrovlivdalsatlibtabhanticpidtorbolfosdot\ -losdilforpilramtirwintadbicdifrocwidbisdasmidlop\ -rilnardapmolsanlocnovsitnidtipsicropwitnatpanmin\ -ritpodmottamtolsavposnapnopsomfinfonbanmorworsip\ -ronnorbotwicsocwatdolmagpicdavbidbaltimtasmallig\ -sivtagpadsaldivdactansidfabtarmonranniswolmispal\ -lasdismaprabtobrollatlonnodnavfignomnibpagsopral\ -bilhaddocridmocpacravripfaltodtiltinhapmicfanpat\ -taclabmogsimsonpinlomrictapfirhasbosbatpochactid\ -havsaplindibhosdabbitbarracparloddosbortochilmac\ -tomdigfilfasmithobharmighinradmashalraglagfadtop\ -mophabnilnosmilfopfamdatnoldinhatnacrisfotribhoc\ -nimlarfitwalrapsarnalmoslandondanladdovrivbacpol\ -laptalpitnambonrostonfodponsovnocsorlavmatmipfip\ -` - -const suf = ` -zodnecbudwessevpersutletfulpensytdurwepserwylsun\ -rypsyxdyrnuphebpeglupdepdysputlughecryttyvsydnex\ -lunmeplutseppesdelsulpedtemledtulmetwenbynhexfeb\ -pyldulhetmevruttylwydtepbesdexsefwycburderneppur\ -rysrebdennutsubpetrulsynregtydsupsemwynrecmegnet\ -secmulnymtevwebsummutnyxrextebfushepbenmuswyxsym\ -selrucdecwexsyrwetdylmynmesdetbetbeltuxtugmyrpel\ -syptermebsetdutdegtexsurfeltudnuxruxrenwytnubmed\ -lytdusnebrumtynseglyxpunresredfunrevrefmectedrus\ -bexlebduxrynnumpyxrygryxfeptyrtustyclegnemfermer\ -tenlusnussyltecmexpubrymtucfyllepdebbermughuttun\ -bylsudpemdevlurdefbusbeprunmelpexdytbyttyplevmyl\ -wedducfurfexnulluclennerlexrupnedlecrydlydfenwel\ -nydhusrelrudneshesfetdesretdunlernyrsebhulryllud\ -remlysfynwerrycsugnysnyllyndyndemluxfedsedbecmun\ -lyrtesmudnytbyrsenwegfyrmurtelreptegpecnelnevfes\ -` - -// groups suffixes into array of syllables -const suffixes = suf.match(/.{1,3}/g) - -// groups prefixes into array of syllables -const prefixes = pre.match(/.{1,3}/g) - -// Get item at an index in array -const getAt = (arr, index) => arr[index] - -// Gets the length of an array -const len = arr => arr.length - -// gets the last index as an int from an array -const lid = arr => arr.length - 1 - -// wraps indexOf -const indexOf = (arr, str) => arr.indexOf(str) - -// is a int odd? -const isOdd = n => n % 2 !== 0 - -// is a int even? -const isEven = n => !isOdd(n) - -// Makes an array of length num populated with its indices -const seq = num => Array.from(Array(num), (nada, i) => i) - -// Gets the prefix at an index -const getPrefix = i => getAt(prefixes, i) - -// Gets the suffix at an index -const getSuffix = i => getAt(suffixes, i) - -// Checks if a syllable exists in both suffixes and prefixes -const doesExist = str => [...suffixes, ...prefixes].includes(str) - -// Checks if a suffix exists -const doesSuffixExist = str => suffixes.includes(str) - -// Checks if a prefix exists -const doesPrefixExist = str => prefixes.includes(str) - -// Gets the index of a prefix -const getPrefixIndex = str => indexOf(prefixes, str) - -// Gets the index of a suffix -const getSuffixIndex = str => indexOf(suffixes, str) - -// converts a binary string to a base-10 integer -const bin2dec = str => parseInt(str, 2).toString(10) - -// converts a base-10 integer to a binary string -const dec2bin = num => num.toString(2) - -// converts an @P syllable index to a binary string -const syl2bin = index => dec2bin(index).padStart(8, '0') - - -// const wordToNum = str => { -// if (len(str) === 3) return getSuffixIndex(str) -// -// if (len(str) === 6) { -// const addr = getPrefixIndex(str.slice(0, 2)) -// const hex = addr * 0x100 -// const sum = hex + getSuffixIndex(str.slice(3, 5)) -// return sum -// } -// -// return -// } - - - -const feen = pyn => { - const f = 4294967295 - if (pyn >= 0x10000 && pyn <= 0xFFFFFFFF) { - const tmp = fice(pyn - 0x10000) + 0x10000 - return tmp - } - if (pyn >= 0x100000000 && pyn <= 0xffffffffffffffff) { - const pynBn = new bnjs(pyn) - const lo = pynBn.and(f) - const hi = pynBn.and('18446744069414584000') - return hi.or(feen(lo)).toNumber() - } - return pyn -} - - -const fend = cry => { - if (cry >= 0x10000 && cry <= 0xFFFFFFFF) { - const res = new bnjs(teil(cry - 0x10000)) - const resNum = res.add(new bnjs(65536)).toNumber() - return resNum - } - if (cry >= 0x100000000 && cry <= bn(0xffffffffffffffff)) { - const cryBn = new bnjs(cry) - const lo = cryBn.and(new bnjs('0xFFFFFFFF')) - const hi = cryBn.and(new bnjs('0xffffffff00000000')) - const res = hi.or(fend(lo)) - return res.toNumber() - } - return cry -} - - - -const fice = nor => { - let sel = [ - nor % 65535, - nor / 65535 - ] - for (var i = 0; i < 4; i++) { - sel = rynd(i, sel[0], sel[1]) - } - - const res = 65535 * sel[0] + sel[1] - return res -} - - -const teil = vip => { - let sel = [ - vip % 65535, - vip / 65535 - //vip % 0xFFFF, - //vip / 0x10000 - ] - // maybe the for loops got borked in lua conversion - for (var i = 3; i > -1; i--) { - sel = rund(i, sel[0], sel[1]) - } - //var res = bn(bn(0xFFFF).mul(sel[0])).add(sel[1]) - const r1 = new bnjs(65535) - const res = r1.mul(new bnjs(sel[0])).add(new bnjs(sel[1])) - return res.toNumber() -} - - -const rynd = (n, l, r) => { - l = Math.floor(l) - const res = [r, 0] - const m = isEven(n) - ? new bnjs(65535) - : new bnjs(65536) - - //res[1] = (bn(muk(raku[n], 2, r)).add(l)) % m - const r1 = new bnjs(muk(raku[n], 2, r)) - const r2 = r1.add(new bnjs(l)).mod(m) - res[1] = r2.toNumber() - return res -} - - -const rund = (n, l, r) => { - l = Math.floor(l) - const res = [r, 0] - const m = isEven(n) - ? new bnjs(65535) - : new bnjs(65536) - const h = new bnjs(muk(raku[n], 2, r)) - const r1 = new bnjs(m + l) - const r2 = r1.sub(h.mod(m)).mod(m).toString() - res[1] = r2 - return res -} - - -const muk = (syd, len, key) => { - //key = bn(key) - const lo = key & 0xFF - const hi = (key & 0xFF00) / 256 - const res = murmur3(String.fromCharCode(lo) + String.fromCharCode(hi), syd) - return res -} - - -const murmur3 = (data, seed) => { - if (!seed) seed = 0 - - const c1 = new bnjs(3432918353) - const c2 = new bnjs(461845907) - - const f = 4294967295 - - const length = new bnjs(len(data)) - let h1 = new bnjs(seed) - let k1 - const roundedEnd = length & 0xFFFFFFFC - // this will likely need to be redone with bignum - for (var i = 0; i < roundedEnd; i += 4) { - var x = data.charCodeAt(i + 3) ? data.charCodeAt(i + 3) : 0 - k1 = bn(data.charCodeAt(i) & 0xFF) - | ((data.charCodeAt(i + 1) & 0xFF) << 8) - | ((data.charCodeAt(i + 2) & 0xFF) << 16) - | (x << 24) - k1 = k1 * c1 - k1 = (k1 << 15) | ((k1 & 0xFFFFFFFF) >> 17) - k1 = k1 * c2 - h1 = h1 ^ k1 - h1 = (h1 << 13) | ((h1 & 0xFFFFFFFF) >> 19) - h1 = h1 * 5 + 3864292196 - } - - k1 = 0 - const val = length & 0x03 - if (val == 3) { - k1 = (data.charCodeAt(roundedEnd + 2) & 0xFF) << 16 - } - if (val == 3 || val == 2) { - k1 = k1 | (data.charCodeAt(roundedEnd + 1) & 0xFF) << 8 - } - if (val == 3 || val == 2 || val == 1) { - k1 = k1 | (data.charCodeAt(roundedEnd) & 0xFF) - k1 = new bnjs(k1 * c1) - var k2 = new bnjs(k1.and(new bnjs(f)).shrn(17)) - k1 = k1.shln(15).or(k2) - k1 = k1.mul(c2) - h1 = h1.xor(k1) - } - h1 = h1.xor(length) - h1 = h1.xor(h1.and(new bnjs(f)).shrn(16)) - h1 = h1.mul(new bnjs(2246822507)) - h1 = h1.xor(h1.and(new bnjs(f)).shrn(13)) - h1 = h1.mul(new bnjs(3266489909)) - h1 = h1.xor(h1.and(new bnjs(f)).shrn(16)) - return h1.and(new bnjs(f)).toNumber() -} - - -/* - * Public methods - * -- toAddress ( ship name ) - * -- => address number - * -- to{Galaxy,Star,Planet}Ship ( address number ) - * -- => ship name - * ####################### NOT YET IMPLEMENTED ########################## - * -- clan ( ship name or address number (int or bn) ) - * -- => "galaxy", "star", "planet", "moon" or "comet" - * -- sein ( ship name or address number (int or bn) ) - * -- => parent name or address number - * - */ - - -// converts a @P string to an array of syllables -const nameToArr = p => p.replace(/[\^~-]/g,'').match(/.{1,3}/g) - - -// returns the class of a ship from it's name -const typeOfShip = name => { - const length = len(nameToArr(name)) - switch(length) { - case 1: return 'galaxy' - case 2: return 'star' - case 4: return 'planet' - case 8: return 'moon' - case 16: return 'comet' - default: return 'invalid' - } -} - - -// converts a string @P into an integer address -const toAddress = (name, unscramble) => { - - // set a default true value for unscramble - if (isUndefined(unscramble)) unscramble = true - - // if the name is invalid, return undefined - if (!isValidName(name)) return - - // if the name is a string, convert to array of syllables - if (isString(name)) name = nameToArr(name) - - // concat 8 bit binary numbers of syllable indexes - const addr = reduce(name, (acc, syl, index) => { - return isOdd(index) || len(name) === 1 - ? acc + syl2bin(getSuffixIndex(syl)) - : acc + syl2bin(getPrefixIndex(syl)) - }, '') - - // convert back to base 10 - const addrInt = bin2dec(addr) - - // if unscramble is true, use fend() - return unscramble - ? fend(addrInt) - : addrInt -} - - -// Checks if a string @P is valid -const isValidName = name => { - // convert string @P to array of syllables - const sylArr = nameToArr(name) - - // Quickly fail if length of @p is greater than 1 and odd - if (isOdd(len(sylArr)) && len(sylArr) !== 1) return false - - // check if each syllable exists - const tests = map(sylArr, (syl, index) => isOdd(index) || len(sylArr) === 1 - ? doesSuffixExist(syl) - : doesPrefixExist(syl)) - - // if all syllables exist, return true, if any single syllables don't exist, - // return false - return every(tests, test => test === true) -} - - -// converts a galaxy address to a string @P -const toGalaxyName = galaxy => toShipName(galaxy, 1) - - -// converts a star address to a string @P -const toStarName = star => toShipName(star, 2) - - -// converts a planet address to a string @P -const toPlanetName = (scrambled, scramble) => { - if (isUndefined(scramble)) scramble = true - return toShipName(scrambled, 4, scramble) -} - - -// converts an array of syllables to a string @P -const patpArrToStr = p => reduce(p, (acc, syl, i) => isEven(i) - ? i === 0 - ? `~${acc}${syl}` - ? i === 16 - : `${acc}^${syl}` - : `${acc}-${syl}` - : `${acc}${syl}` -, '') - - -// converts an integer address to a string @P -const toShipName = (addr, minBytes, scramble) => { - if (isUndefined(scramble)) scramble = true - - if (!minBytes) { - if (addr < 0x100) { - minBytes = 1 - } else if (addr < 0x10000) { - minBytes = 2 - } else { - minBytes = 4 - } - } - - if (minBytes === 4 && scramble) addr = feen(addr) - - const name = reduce(seq(minBytes), (acc, index) => { - const byt = Math.floor(addr % 256) - - addr = addr / 256 - - const syllable = isOdd(index) - ? getPrefix(byt) - : getSuffix(byt) - - return index === 2 - ? acc = syllable + '-' + acc - : acc = syllable + acc - }, '') - - return name -} - - -module.exports = { - toAddress: toAddress, - toGalaxyName: toGalaxyName, - toStarName: toStarName, - toPlanetName: toPlanetName, - isValidName: isValidName, - // _wordtonum: wordToNum, - _getsuffix: getSuffix, - _muk: muk, - _feen: feen, - _fend: fend, - _teil: teil -} diff --git a/package-lock.json b/package-lock.json @@ -4,29 +4,9444 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "ansi-font": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/ansi-font/-/ansi-font-0.0.2.tgz", - "integrity": "sha1-iQMBvVhBRi/TnAt3Ca/R9SUUMzE=", + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.0.0.tgz", + "integrity": "sha512-nrvxS5u6QUN5gLl1GEakIcmOeoUHT1/gQtdMRq18WFURJ5osn4ppJLVSseMQo4zVWKJfBTF4muIYijXUnKlRLQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.0.0", + "@babel/helpers": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "convert-source-map": "^1.1.0", + "debug": "^3.1.0", + "json5": "^0.5.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0.tgz", + "integrity": "sha512-/BM2vupkpbZXq22l1ALO7MqXJZH2k8bKVv8Y+pABFnzWdztDB/ZLveP5At21vLz5c2YtSE6p7j2FZEsqafMz5Q==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", + "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.0.0.tgz", + "integrity": "sha512-9HdU8lrAc4FUZOy+y2w//kUhynSpkGIRYDzJW1oKJx7+v8m6UEAbAd2tSvxirsq2kJTXJZZS6Eo8FnUDUH0ZWw==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-call-delegate": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.0.0.tgz", + "integrity": "sha512-HdYG6vr4KgXHK0q1QRZ8guoYCF5rZjIdPlhcVY+j4EBK/FDR+cXRM5/6lQr3NIWDc7dO1KfgjG5rfH6lM89VBw==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-define-map": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.0.0.tgz", + "integrity": "sha512-acbCxYS9XufWxsBiclmXMK1CFz7en/XSYvHFcbb3Jb8BqjFEBrA46WlIsoSQTRG/eYN60HciUnzdyQxOZhrHfw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.0.0", + "@babel/types": "^7.0.0", + "lodash": "^4.17.10" + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.0.0.tgz", + "integrity": "sha512-5gLPwdDnYf8GfPsjS+UmZUtYE1jaXTFm1P+ymGobqvXbA0q3ANgpH60+C6zDrRAWXYbQXYvzzQC/r0gJVNNltQ==", + "dev": true, + "requires": { + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-function-name": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0.tgz", + "integrity": "sha512-Zo+LGvfYp4rMtz84BLF3bavFTdf8y4rJtMPTe2J+rxYmnDOIeH8le++VFI/pRJU+rQhjqiXxE4LMaIau28Tv1Q==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz", + "integrity": "sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", + "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", + "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.0.0.tgz", + "integrity": "sha512-QdwmTTlPmT7TZcf30dnqm8pem+o48tVt991xXogE5CQCwqSpWKuzH2E9v8VWeccQ66a6/CmrLZ+bwp66JYeM5A==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-simple-access": "^7.0.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/types": "^7.0.0", + "lodash": "^4.17.10" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", + "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, + "@babel/helper-regex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.0.0.tgz", + "integrity": "sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.0.0.tgz", + "integrity": "sha512-3o4sYLOsK6m0A7t1P0saTanBPmk5MAlxVnp9773Of4L8PMVLukU7loZix5KoJgflxSo2c2ETTzseptc0rQEp7A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-wrap-function": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-replace-supers": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.0.0.tgz", + "integrity": "sha512-fsSv7VogxzMSmGch6DwhKHGsciVXo7hbfhBgH9ZrgJMXKMjO7ASQTUfbVL7MU1uCfviyqjucazGK7TWPT9weuQ==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.0.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.0.0.tgz", + "integrity": "sha512-CNeuX52jbQSq4j1n+R+21xrjbTjsnXa9n1aERbgHRD/p9h4Udkxr1n24yPMQmnTETHdnQDvkVSYWFw/ETAymYg==", + "dev": true, + "requires": { + "@babel/template": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-wrap-function": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.0.0.tgz", + "integrity": "sha512-kjprWPDNVPZ/9pyLRXcZBvfjnFwqokmXTPTaC4AV8Ns7WRl7ewSxrB19AWZzQsC/WSPQLOw1ciR8uPYkAM1znA==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helpers": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.0.0.tgz", + "integrity": "sha512-jbvgR8iLZPnyk6m/UqdXYsSxbVtRi7Pd3CzB4OPwPBnmhNG1DWjiiy777NTuoyIcniszK51R40L5pgfXAfHDtw==", + "dev": true, + "requires": { + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0.tgz", + "integrity": "sha512-RgJhNdRinpO8zibnoHbzTTexNs4c8ROkXFBanNDZTLHjwbdLk8J5cJSKulx/bycWTLYmKVNCkxRtVCoJnqPk+g==", + "dev": true + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.0.0.tgz", + "integrity": "sha512-QsXmmjLrFADCcDQAfdQn7tfBRLjpTzRWaDpKpW4ZXW1fahPG4SvjcF1xfvVnXGC662RSExYXL+6DAqbtgqMXeA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.0.0", + "@babel/plugin-syntax-async-generators": "^7.0.0" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz", + "integrity": "sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-json-strings": "^7.0.0" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz", + "integrity": "sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.0.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz", + "integrity": "sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.0.0" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz", + "integrity": "sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0", + "regexpu-core": "^4.2.0" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz", + "integrity": "sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz", + "integrity": "sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz", + "integrity": "sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz", + "integrity": "sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz", + "integrity": "sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.0.0.tgz", + "integrity": "sha512-CiWNhSMZzj1n3uEKUUS/oL+a7Xi8hnPQB6GpC1WfL/ZYvxBLDBn14sHMo5EyOaeArccSonyk5jFIKMRRbrHOnQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.0.0" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz", + "integrity": "sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz", + "integrity": "sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "lodash": "^4.17.10" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.0.0.tgz", + "integrity": "sha512-8LBm7XsHQiNISEmb+ejBiHi1pUihwUf+lrIwyVsXVbQ1vLqgkvhgayK5JnW3WXvQD2rmM0qxFAIyDE5vtMem2A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-define-map": "^7.0.0", + "@babel/helper-function-name": "^7.0.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.0.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz", + "integrity": "sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0.tgz", + "integrity": "sha512-Fr2GtF8YJSXGTyFPakPFB4ODaEKGU04bPsAllAIabwoXdFrPxL0LVXQX5dQWoxOjjgozarJcC9eWGsj0fD6Zsg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz", + "integrity": "sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0", + "regexpu-core": "^4.1.3" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz", + "integrity": "sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.0.0.tgz", + "integrity": "sha512-Ig74elCuFQ0mvHkWUq5qDCNI3qHWlop5w4TcDxdtJiOk8Egqe2uxDRY9XnXGSlmWClClmnixcoYumyvbAuj4dA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz", + "integrity": "sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.0.0.tgz", + "integrity": "sha512-mR7JN9vkwsAIot74pSwzn/2Gq4nn2wN0HKtQyJLc1ghAarsymdBMTfh+Q/aeR2N3heXs3URQscTLrKe3yUU7Yw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz", + "integrity": "sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.0.0.tgz", + "integrity": "sha512-CtSVpT/0tty/4405qczoIHm41YfFbPChplsmfBwsi3RTq/M9cHgVb3ixI5bqqgdKkqWwSX2sXqejvMKLuTVU+Q==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.0.0.tgz", + "integrity": "sha512-BIcQLgPFCxi7YygtNpz5xj+7HxhOprbCGZKeLW6Kxsn1eHS6sJZMw4MfmqFZagl/v6IVa0AJoMHdDXLVrpd3Aw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-simple-access": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.0.0.tgz", + "integrity": "sha512-8EDKMAsitLkiF/D4Zhe9CHEE2XLh4bfLbb9/Zf3FgXYQOZyZYyg7EAel/aT2A7bHv62jwHf09q2KU/oEexr83g==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.0.0.tgz", + "integrity": "sha512-EMyKpzgugxef+R1diXDwqw/Hmt5ls8VxfI8Gq5Lo8Qp3oKIepkYG4L/mvE2dmZSRalgL9sguoPKbnQ1m96hVFw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz", + "integrity": "sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.0.0.tgz", + "integrity": "sha512-BfAiF1l18Xr1shy1NyyQgLiHDvh/S7APiEM5+0wxTsQ+e3fgXO+NA47u4PvppzH0meJS21y0gZHcjnvUAJj8tQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.0.0" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.0.0.tgz", + "integrity": "sha512-eWngvRBWx0gScot0xa340JzrkA+8HGAk1OaCHDfXAjkrTFkp73Lcf+78s7AStSdRML5nzx5aXpnjN1MfrjkBoA==", + "dev": true, + "requires": { + "@babel/helper-call-delegate": "^7.0.0", + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz", + "integrity": "sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw==", + "dev": true, + "requires": { + "regenerator-transform": "^0.13.3" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz", + "integrity": "sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz", + "integrity": "sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz", + "integrity": "sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz", + "integrity": "sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz", + "integrity": "sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz", + "integrity": "sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0", + "regexpu-core": "^4.1.3" + } + }, + "@babel/preset-env": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.0.0.tgz", + "integrity": "sha512-Fnx1wWaWv2w2rl+VHxA9si//Da40941IQ29fKiRejVR7oN1FxSEL8+SyAX/2oKIye2gPvY/GBbJVEKQ/oi43zQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-async-generator-functions": "^7.0.0", + "@babel/plugin-proposal-json-strings": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.0.0", + "@babel/plugin-syntax-async-generators": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-async-to-generator": "^7.0.0", + "@babel/plugin-transform-block-scoped-functions": "^7.0.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.0.0", + "@babel/plugin-transform-dotall-regex": "^7.0.0", + "@babel/plugin-transform-duplicate-keys": "^7.0.0", + "@babel/plugin-transform-exponentiation-operator": "^7.0.0", + "@babel/plugin-transform-for-of": "^7.0.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-modules-amd": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-modules-systemjs": "^7.0.0", + "@babel/plugin-transform-modules-umd": "^7.0.0", + "@babel/plugin-transform-new-target": "^7.0.0", + "@babel/plugin-transform-object-super": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-regenerator": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-sticky-regex": "^7.0.0", + "@babel/plugin-transform-template-literals": "^7.0.0", + "@babel/plugin-transform-typeof-symbol": "^7.0.0", + "@babel/plugin-transform-unicode-regex": "^7.0.0", + "browserslist": "^4.1.0", + "invariant": "^2.2.2", + "js-levenshtein": "^1.1.3", + "semver": "^5.3.0" + } + }, + "@babel/template": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0.tgz", + "integrity": "sha512-VLQZik/G5mjYJ6u19U3W2u7eM+rA/NGzH+GtHDFFkLTKLW66OasFrxZ/yK7hkyQcswrmvugFyZpDFRW0DjcjCw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/traverse": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0.tgz", + "integrity": "sha512-ka/lwaonJZTlJyn97C4g5FYjPOx+Oxd3ab05hbDr1Mx9aP1FclJ+SUHyLx3Tx40sGmOVJApDxE6puJhd3ld2kw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.0.0", + "@babel/helper-function-name": "^7.0.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/types": "^7.0.0", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + } + }, + "@babel/types": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0.tgz", + "integrity": "sha512-5tPDap4bGKTLPtci2SUl/B7Gv8RnuJFuQoWx26RJobS0fFrz4reUA3JnwIM+HVHEmWE0C1mzKhDtTp8NsWY02Q==", + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "@trust/keyto": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@trust/keyto/-/keyto-0.3.4.tgz", + "integrity": "sha512-OAqKvuSEPIu2zCnIHzBthvGnV8nKmpv7cBlRMngLzJZzZI9CanyuSfnEI1xC4sH4TwqA0XJR7Mb0oX4bwymXIw==", + "dev": true, + "requires": { + "asn1.js": "^4.9.1", + "base64url": "^3.0.0", + "elliptic": "^6.4.0" + }, + "dependencies": { + "base64url": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.0.tgz", + "integrity": "sha512-LIVmqIrIWuiqTvn4RzcrwCOuHo2DD6tKmKBPXXlr4p4n4l6BZBkwFTIa3zu1XkX5MbZgro4a6BvPi+n2Mns5Gg==", + "dev": true + } + } + }, + "@trust/webcrypto": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/@trust/webcrypto/-/webcrypto-0.8.4.tgz", + "integrity": "sha512-FgMCY2rmo3uw6S/k2uut6N7Am5N6PG5p/2MntA6RI6jtda07090kuy1NPC7wTRxuqFUb3hlg3HnBJm/MdvofBw==", + "dev": true, + "requires": { + "@trust/keyto": "^0.3.1", + "base64url": "^2.0.0", + "elliptic": "^6.4.0", + "node-rsa": "^0.4.0", + "text-encoding": "^0.6.1" + } + }, + "abab": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", + "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w==", + "dev": true + }, + "abstract-leveldown": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz", + "integrity": "sha1-KeGOYy5g5OIh1YECR4UqY9ey5BA=", + "dev": true, + "requires": { + "xtend": "~3.0.0" + }, + "dependencies": { + "xtend": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz", + "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=", + "dev": true + } + } + }, + "acorn": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz", + "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==", + "dev": true + }, + "acorn-globals": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.1.0.tgz", + "integrity": "sha512-KjZwU26uG3u6eZcfGbTULzFcsoz6pegNKtHPksZPOUsiKo5bUmiBPa38FuHZ/Eun+XYh/JCCkS9AS3Lu4McQOQ==", + "dev": true, + "requires": { + "acorn": "^5.0.0" + } + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, + "ansi-escapes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "dev": true + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "dev": true, + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "dev": true + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + } + }, + "append-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", + "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", + "dev": true, + "requires": { + "buffer-equal": "^1.0.0" + } + }, + "append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "arr-filter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", + "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", + "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-initial": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", + "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", + "dev": true, + "requires": { + "array-slice": "^1.0.0", + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-last": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", + "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", + "dev": true, + "requires": { + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, + "array-sort": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", + "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", + "dev": true, + "requires": { + "default-compare": "^1.0.0", + "get-value": "^2.0.6", + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "dev": true + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "async-done": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.1.tgz", + "integrity": "sha512-R1BaUeJ4PMoLNJuk+0tLJgjmEqVsdN118+Z8O+alhnQDQgy0kmD5Mqi0DNEmMx2LM0Ed5yekKu+ZXYvIHceicg==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.2", + "process-nextick-args": "^1.0.7", + "stream-exhaust": "^1.0.1" + } + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", + "dev": true + }, + "async-settle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", + "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", + "dev": true, + "requires": { + "async-done": "^1.2.2" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "b64-lite": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/b64-lite/-/b64-lite-1.3.1.tgz", + "integrity": "sha512-A3n/YWszeQeUeKKy+XRfsDW/s/+1cvD110HYA4uXtkNswNLd1MxrNblYt2lgKisUS3UfPPTaXhvFegD+l4YuOA==", + "dev": true, + "requires": { + "base-64": "^0.1.0" + } + }, + "b64u-lite": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/b64u-lite/-/b64u-lite-1.0.1.tgz", + "integrity": "sha512-4E6rqyrCnrAdzayWUS8XwFC/vRTBbmR7fgqb/IuHXRM2z63VH/tNxtzDWZhgCXCORTiwy2mIhCtmHyc9TMBj7Q==", + "dev": true, + "requires": { + "b64-lite": "^1.1.1" + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-jest": { + "version": "23.4.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-23.4.2.tgz", + "integrity": "sha512-wg1LJ2tzsafXqPFVgAsYsMCVD5U7kwJZAvbZIxVm27iOewsQw1BR7VZifDlMTEWVo3wasoPPyMdKXWCsfFPr3Q==", + "dev": true, + "requires": { + "babel-plugin-istanbul": "^4.1.6", + "babel-preset-jest": "^23.2.0" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-istanbul": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz", + "integrity": "sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==", + "dev": true, + "requires": { + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "find-up": "^2.1.0", + "istanbul-lib-instrument": "^1.10.1", + "test-exclude": "^4.2.1" + } + }, + "babel-plugin-jest-hoist": { + "version": "23.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz", + "integrity": "sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc=", + "dev": true + }, + "babel-plugin-lodash": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/babel-plugin-lodash/-/babel-plugin-lodash-3.3.4.tgz", + "integrity": "sha512-yDZLjK7TCkWl1gpBeBGmuaDIFhZKmkoL+Cu2MUUjv5VxUZx/z7tBGBCBcQs5RI1Bkz5LLmNdjx7paOyQtMovyg==", + "requires": { + "@babel/helper-module-imports": "^7.0.0-beta.49", + "@babel/types": "^7.0.0-beta.49", + "glob": "^7.1.1", + "lodash": "^4.17.10", + "require-package-name": "^2.0.1" + } + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "http://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-preset-jest": { + "version": "23.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz", + "integrity": "sha1-jsegOhOPABoaj7HoETZSvxpV2kY=", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^23.2.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + } + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + }, + "dependencies": { + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "bach": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", + "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", + "dev": true, + "requires": { + "arr-filter": "^1.1.1", + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "array-each": "^1.0.0", + "array-initial": "^1.0.0", + "array-last": "^1.1.1", + "async-done": "^1.2.2", + "async-settle": "^1.0.0", + "now-and-later": "^2.0.0" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "base-64": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", + "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=", + "dev": true + }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true, + "optional": true + }, + "base64url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-2.0.0.tgz", + "integrity": "sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "dev": true + }, + "bl": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-0.8.2.tgz", + "integrity": "sha1-yba8oI0bwuoA/Ir7Txpf0eHGbk4=", + "dev": true, + "requires": { + "readable-stream": "~1.0.26" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browser-process-hrtime": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz", + "integrity": "sha1-Ql1opY00R/AqBKqJQYf86K+Le44=", + "dev": true + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-fs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-fs/-/browserify-fs-1.0.0.tgz", + "integrity": "sha1-8HWqinKdTRcW0GZiDjhvzBMRqW8=", + "dev": true, + "requires": { + "level-filesystem": "^1.0.1", + "level-js": "^2.1.3", + "levelup": "^0.18.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserslist": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.1.0.tgz", + "integrity": "sha512-kQBKB8hnq1SRfSpwHDpM1JNHAyk9fydW8hIDvndR2ijTFKIlBPEvkJkCt8JznOugdm12/YCaRgyq/sqDGz9PwA==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000878", + "electron-to-chromium": "^1.3.61", + "node-releases": "^1.0.0-alpha.11" + } + }, + "bser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.0.0.tgz", + "integrity": "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true + }, + "buffer-es6": { + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/buffer-es6/-/buffer-es6-4.9.3.tgz", + "integrity": "sha1-8mNHuC33b9N+GLy1KIxJcM/VxAQ=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30000883", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000883.tgz", + "integrity": "sha512-ovvb0uya4cKJct8Rj9Olstz0LaWmyJhCp3NawRG5fVigka8pEhIIwipF7zyYd2Q58UZb5YfIt52pVF444uj2kQ==", + "dev": true + }, + "capture-exit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-1.2.0.tgz", + "integrity": "sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28=", + "dev": true, + "requires": { + "rsvp": "^3.3.3" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.4.0.tgz", + "integrity": "sha512-Oqmw2pVfCl8sCL+1QgMywPfdxPJPkC51y4usw0iiE2S9qnEOAqXy8bwl1CpMpnoU39g4iKJTz6QZj+28FvOnjQ==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true + }, + "clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true + }, + "cloneable-readable": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz", + "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-map": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", + "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", + "dev": true, + "requires": { + "arr-map": "^2.0.2", + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "dependencies": { + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + } + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "requires": { + "graceful-readlink": ">= 1.0.0" + } + }, + "compare-versions": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.4.0.tgz", + "integrity": "sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-props": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", + "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "dev": true, + "requires": { + "each-props": "^1.3.0", + "is-plain-object": "^2.0.1" + } + }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "cssom": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.4.tgz", + "integrity": "sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog==", + "dev": true + }, + "cssstyle": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.1.1.tgz", + "integrity": "sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog==", + "dev": true, + "requires": { + "cssom": "0.3.x" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "dev": true, + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.0.1.tgz", + "integrity": "sha512-0HdcMZzK6ubMUnsMmQmG0AcLQPvbvb47R0+7CCZQCYgcd8OUWG91CG7sM6GoXgjz+WLl4ArFzHtBMy/QqSF4eg==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "default-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", + "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "dev": true, + "requires": { + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "default-resolution": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", + "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", + "dev": true + }, + "deferred-leveldown": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-0.2.0.tgz", + "integrity": "sha1-LO8fER4cV4cNi7uK8mUOWHzS9bQ=", + "dev": true, + "requires": { + "abstract-leveldown": "~0.12.1" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "duplexify": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", + "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "each-props": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", + "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.1", + "object.defaults": "^1.1.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "electron-to-chromium": { + "version": "1.3.62", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.62.tgz", + "integrity": "sha512-x09ndL/Gjnuk3unlAyoGyUg3wbs4w/bXurgL7wL913vXHAOWmMhrLf1VNGRaMLngmadd5Q8gsV9BFuIr6rP+Xg==", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", + "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", + "dev": true, + "requires": { + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" + } + }, + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, + "requires": { + "is-callable": "^1.1.1", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.1" + } + }, + "es5-ext": { + "version": "0.10.46", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", + "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", + "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, + "estree-walker": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.5.2.tgz", + "integrity": "sha512-XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig==", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz", + "integrity": "sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==", + "dev": true, + "requires": { + "merge": "^1.2.0" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "expect": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-23.5.0.tgz", + "integrity": "sha512-aG083W63tBloy8YgafWuC44EakjYe0Q6Mg35aujBPvyNU38DvLat9BVzOihNP2NZDLaCJiFNe0vejbtO6knnlA==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "jest-diff": "^23.5.0", + "jest-get-type": "^22.1.0", + "jest-matcher-utils": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-regex-util": "^23.3.0" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fancy-log": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", + "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "time-stamp": "^1.0.0" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fb-watchman": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", + "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", + "dev": true, + "requires": { + "bser": "^2.0.0" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fileset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", + "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "dev": true, + "requires": { + "glob": "^7.0.3", + "minimatch": "^3.0.3" + } + }, + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } + } + }, + "fined": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz", + "integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "flagged-respawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz", + "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c=", + "dev": true + }, + "flush-write-stream": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", + "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs-mkdirp-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", + "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "through2": "^2.0.3" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.21", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "^2.1.0" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "fwd-stream": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fwd-stream/-/fwd-stream-1.0.4.tgz", + "integrity": "sha1-7Sgcq+1G/uz5Ie4y3ExQs3KsfPo=", + "dev": true, + "requires": { + "readable-stream": "~1.0.26-4" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "glob-stream": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", + "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "glob": "^7.1.1", + "glob-parent": "^3.1.0", + "is-negated-glob": "^1.0.0", + "ordered-read-streams": "^1.0.0", + "pumpify": "^1.3.5", + "readable-stream": "^2.1.5", + "remove-trailing-separator": "^1.0.1", + "to-absolute-glob": "^2.0.0", + "unique-stream": "^2.0.2" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-watcher": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-4.0.0.tgz", + "integrity": "sha1-nmOo/25h6TLebMLK7OUHGm1zcyk=", + "dev": true, + "requires": { + "async-done": "^1.2.0", + "chokidar": "^1.4.3", + "just-debounce": "^1.0.0", + "object.defaults": "^1.1.0" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "globals": { + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true + }, + "glogg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz", + "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==", + "dev": true, + "requires": { + "sparkles": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "gulp": { + "version": "github:gulpjs/gulp#71c094a51c7972d26f557899ddecab0210ef3776", + "from": "github:gulpjs/gulp#4.0", + "dev": true, + "requires": { + "glob-watcher": "^4.0.0", + "gulp-cli": "^2.0.0", + "undertaker": "^1.0.0", + "vinyl-fs": "^3.0.0" + }, + "dependencies": { + "gulp-cli": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.0.1.tgz", + "integrity": "sha512-RxujJJdN8/O6IW2nPugl7YazhmrIEjmiVfPKrWt68r71UCaLKS71Hp0gpKT+F6qOUFtr7KqtifDKaAJPRVvMYQ==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "archy": "^1.0.0", + "array-sort": "^1.0.0", + "color-support": "^1.1.3", + "concat-stream": "^1.6.0", + "copy-props": "^2.0.1", + "fancy-log": "^1.3.2", + "gulplog": "^1.0.0", + "interpret": "^1.1.0", + "isobject": "^3.0.1", + "liftoff": "^2.5.0", + "matchdep": "^2.0.0", + "mute-stdout": "^1.0.0", + "pretty-hrtime": "^1.0.0", + "replace-homedir": "^1.0.0", + "semver-greatest-satisfied-range": "^1.1.0", + "v8flags": "^3.0.1", + "yargs": "^7.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "dev": true, + "requires": { + "glogg": "^1.0.0" + } + }, + "handlebars": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz", + "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", + "dev": true, + "requires": { + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", + "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", + "dev": true, + "requires": { + "ajv": "^5.3.0", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", + "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "homedir-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", + "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.1" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "idb-wrapper": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/idb-wrapper/-/idb-wrapper-1.7.2.tgz", + "integrity": "sha512-zfNREywMuf0NzDo9mVsL0yegjsirJxHpKHvWcyRozIqQy89g0a3U+oBPOCN4cc0oCiOuYgZHimzaW/R46G1Mpg==", + "dev": true + }, + "import-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", + "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "dev": true + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/is/-/is-0.2.7.tgz", + "integrity": "sha1-OzSixI81mXLzUEKEkZOucmS2NWI=", + "dev": true + }, + "is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "requires": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-ci": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.0.tgz", + "integrity": "sha512-plgvKjQtalH2P3Gytb7L61Lmz95g2DlpzFiQyRSFew8WoJKxtKRzrZMeyRN2supblm3Psc8OQGy7Xjb6XG11jw==", + "dev": true, + "requires": { + "ci-info": "^1.3.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, + "is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "dev": true + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-object": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-0.1.2.tgz", + "integrity": "sha1-AO+8CIFsM8/ErIJR0TLhDcZQmNc=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "requires": { + "is-unc-path": "^1.0.0" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "requires": { + "unc-path-regex": "^0.1.2" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isbuffer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/isbuffer/-/isbuffer-0.0.0.tgz", + "integrity": "sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "isomorphic-webcrypto": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/isomorphic-webcrypto/-/isomorphic-webcrypto-1.6.0.tgz", + "integrity": "sha512-v4kMbCCUmrHYRIf8FtTDWTnoxCbUNN8V6ITNtcbfGY07IBHVfJoWwm8Z831bDAdNE+TxhzUifWPvnAGnK6GfaA==", + "dev": true, + "requires": { + "@trust/webcrypto": "^0.8.4", + "b64-lite": "^1.3.1", + "b64u-lite": "^1.0.1", + "mitt": "^1.1.3", + "msrcrypto": "^1.5.1", + "react-native-securerandom": "^0.1.1", + "str2buf": "^1.3.0", + "webcrypto-shim": "^0.1.4" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul-api": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.6.tgz", + "integrity": "sha512-luJDnB1uJ5Qsg/WwusGfNXayQ4598yDgW5S0nUS85T576m1LVJzSqLrCDULkT6sTQXVKHa54093gNuCKumMCjQ==", + "dev": true, + "requires": { + "async": "^2.1.4", + "compare-versions": "^3.1.0", + "fileset": "^2.0.2", + "istanbul-lib-coverage": "^1.2.0", + "istanbul-lib-hook": "^1.2.0", + "istanbul-lib-instrument": "^2.1.0", + "istanbul-lib-report": "^1.1.4", + "istanbul-lib-source-maps": "^1.2.5", + "istanbul-reports": "^1.4.1", + "js-yaml": "^3.7.0", + "mkdirp": "^0.5.1", + "once": "^1.4.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.51.tgz", + "integrity": "sha1-vXHZsZKvl435FYKdOdQJRFZDmgw=", + "dev": true, + "requires": { + "@babel/highlight": "7.0.0-beta.51" + } + }, + "@babel/generator": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.51.tgz", + "integrity": "sha1-bHV1/952HQdIXgS67cA5LG2eMPY=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51", + "jsesc": "^2.5.1", + "lodash": "^4.17.5", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-function-name": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.51.tgz", + "integrity": "sha1-IbSHSiJ8+Z7K/MMKkDAtpaJkBWE=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "7.0.0-beta.51", + "@babel/template": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.51.tgz", + "integrity": "sha1-MoGy0EWvlcFyzpGyCCXYXqRnZBE=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.51.tgz", + "integrity": "sha1-imw/ZsTSZTUvwHdIT59ugKUauXg=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/highlight": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.51.tgz", + "integrity": "sha1-6IRK4loVlcz9QriWI7Q3bKBtIl0=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" + } + }, + "@babel/parser": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-beta.51.tgz", + "integrity": "sha1-J87C30Cd9gr1gnDtj2qlVAnqhvY=", + "dev": true + }, + "@babel/template": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.51.tgz", + "integrity": "sha1-lgKkCuvPNXrpZ34lMu9fyBD1+/8=", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "lodash": "^4.17.5" + } + }, + "@babel/traverse": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.51.tgz", + "integrity": "sha1-mB2vLOw0emIx06odnhgDsDqqpKg=", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-beta.51", + "@babel/generator": "7.0.0-beta.51", + "@babel/helper-function-name": "7.0.0-beta.51", + "@babel/helper-split-export-declaration": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "debug": "^3.1.0", + "globals": "^11.1.0", + "invariant": "^2.2.0", + "lodash": "^4.17.5" + } + }, + "@babel/types": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.51.tgz", + "integrity": "sha1-2AK3tUO1g2x3iqaReXq/APPZfqk=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.5", + "to-fast-properties": "^2.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-2.3.2.tgz", + "integrity": "sha512-l7TD/VnBsIB2OJvSyxaLW/ab1+92dxZNH9wLH7uHPPioy3JZ8tnx2UXUdKmdkgmP2EFPzg64CToUP6dAS3U32Q==", + "dev": true, + "requires": { + "@babel/generator": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/template": "7.0.0-beta.51", + "@babel/traverse": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + }, + "dependencies": { + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + } + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + } + } + }, + "istanbul-lib-coverage": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz", + "integrity": "sha512-GvgM/uXRwm+gLlvkWHTjDAvwynZkL9ns15calTrmhGgowlwJBbWMYzWbKqE2DT6JDP1AFXKa+Zi0EkqNCUqY0A==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.1.tgz", + "integrity": "sha512-eLAMkPG9FU0v5L02lIkcj/2/Zlz9OuluaXikdr5iStk8FDbSwAixTK9TkYxbF0eNnzAJTwM2fkV2A1tpsIp4Jg==", + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz", + "integrity": "sha512-1dYuzkOCbuR5GRJqySuZdsmsNKPL3PTuyPevQfoCXJePT9C8y1ga75neU+Tuy9+yS3G/dgx8wgOmp2KLpgdoeQ==", + "dev": true, + "requires": { + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" + } + }, + "istanbul-lib-report": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.4.tgz", + "integrity": "sha512-Azqvq5tT0U09nrncK3q82e/Zjkxa4tkFZv7E6VcqP0QCPn6oNljDPfrZEC/umNXds2t7b8sRJfs6Kmpzt8m2kA==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^1.2.0", + "mkdirp": "^0.5.1", + "path-parse": "^1.0.5", + "supports-color": "^3.1.2" + }, + "dependencies": { + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.5.tgz", + "integrity": "sha512-8O2T/3VhrQHn0XcJbP1/GN7kXMiRAlPi+fj3uEHrjBD8Oz7Py0prSC25C09NuAZS6bgW1NNKAvCSHZXB0irSGA==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.2.0", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" + } + }, + "istanbul-reports": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.0.tgz", + "integrity": "sha512-HeZG0WHretI9FXBni5wZ9DOgNziqDCEwetxnme5k1Vv5e81uTqcsy3fMH99gXGDGKr1ea87TyGseDMa2h4HEUA==", + "dev": true, + "requires": { + "handlebars": "^4.0.11" + } + }, + "jest": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-23.5.0.tgz", + "integrity": "sha512-+X3Fk4rD8dTnHoIxHJymZthbtYllvSOnXAApQltvyLkHsv+fqyC/SZptUJDbXkFsqZJyyIXMySkdzerz3fv4oQ==", + "dev": true, + "requires": { + "import-local": "^1.0.0", + "jest-cli": "^23.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "jest-cli": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-23.5.0.tgz", + "integrity": "sha512-Kxi2QH8s6NkpPgboza/plpmQ2bjUQ+MwYv7vM5rDwJz/x+NB4YoLXFikPXLWNP0JuYpMvYwITKneFljnNKhq2Q==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "import-local": "^1.0.0", + "is-ci": "^1.0.10", + "istanbul-api": "^1.3.1", + "istanbul-lib-coverage": "^1.2.0", + "istanbul-lib-instrument": "^1.10.1", + "istanbul-lib-source-maps": "^1.2.4", + "jest-changed-files": "^23.4.2", + "jest-config": "^23.5.0", + "jest-environment-jsdom": "^23.4.0", + "jest-get-type": "^22.1.0", + "jest-haste-map": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-regex-util": "^23.3.0", + "jest-resolve-dependencies": "^23.5.0", + "jest-runner": "^23.5.0", + "jest-runtime": "^23.5.0", + "jest-snapshot": "^23.5.0", + "jest-util": "^23.4.0", + "jest-validate": "^23.5.0", + "jest-watcher": "^23.4.0", + "jest-worker": "^23.2.0", + "micromatch": "^2.3.11", + "node-notifier": "^5.2.1", + "prompts": "^0.1.9", + "realpath-native": "^1.0.0", + "rimraf": "^2.5.4", + "slash": "^1.0.0", + "string-length": "^2.0.0", + "strip-ansi": "^4.0.0", + "which": "^1.2.12", + "yargs": "^11.0.0" + } + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", + "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + } + }, + "yargs-parser": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", + "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "jest-changed-files": { + "version": "23.4.2", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-23.4.2.tgz", + "integrity": "sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA==", + "dev": true, + "requires": { + "throat": "^4.0.0" + } + }, + "jest-config": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-23.5.0.tgz", + "integrity": "sha512-JENhQpLaVwXWPLUkhPYgIfecHKsU8GR1vj79rS4n0LSRsHx/U2wItZKoKAd5vtt2J58JPxRq4XheG79jd4fI7Q==", + "dev": true, + "requires": { + "babel-core": "^6.0.0", + "babel-jest": "^23.4.2", + "chalk": "^2.0.1", + "glob": "^7.1.1", + "jest-environment-jsdom": "^23.4.0", + "jest-environment-node": "^23.4.0", + "jest-get-type": "^22.1.0", + "jest-jasmine2": "^23.5.0", + "jest-regex-util": "^23.3.0", + "jest-resolve": "^23.5.0", + "jest-util": "^23.4.0", + "jest-validate": "^23.5.0", + "micromatch": "^2.3.11", + "pretty-format": "^23.5.0" + } + }, + "jest-diff": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-23.5.0.tgz", + "integrity": "sha512-Miz8GakJIz443HkGpVOAyHQgSYqcgs2zQmDJl4oV7DYrFotchdoQvxceF6LhfpRBV1LOUGcFk5Dd/ffSXVwMsA==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "diff": "^3.2.0", + "jest-get-type": "^22.1.0", + "pretty-format": "^23.5.0" + } + }, + "jest-docblock": { + "version": "23.2.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-23.2.0.tgz", + "integrity": "sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c=", + "dev": true, + "requires": { + "detect-newline": "^2.1.0" + } + }, + "jest-each": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-23.5.0.tgz", + "integrity": "sha512-8BgebQgAJmWXpYp4Qt9l3cn1Xei0kZ7JL4cs/NXh7750ATlPGzRRYbutFVJTk5B/Lt3mjHP3G3tLQLyBOCSHGA==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "pretty-format": "^23.5.0" + } + }, + "jest-environment-jsdom": { + "version": "23.4.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz", + "integrity": "sha1-BWp5UrP+pROsYqFAosNox52eYCM=", + "dev": true, + "requires": { + "jest-mock": "^23.2.0", + "jest-util": "^23.4.0", + "jsdom": "^11.5.1" + } + }, + "jest-environment-node": { + "version": "23.4.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-23.4.0.tgz", + "integrity": "sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA=", + "dev": true, + "requires": { + "jest-mock": "^23.2.0", + "jest-util": "^23.4.0" + } + }, + "jest-get-type": { + "version": "22.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz", + "integrity": "sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==", + "dev": true + }, + "jest-haste-map": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-23.5.0.tgz", + "integrity": "sha512-bt9Swigb6KZ6ZQq/fQDUwdUeHenVvZ6G/lKwJjwRGp+Fap8D4B3bND3FaeJg7vXVsLX8hXshRArbVxLop/5wLw==", + "dev": true, + "requires": { + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.1.11", + "invariant": "^2.2.4", + "jest-docblock": "^23.2.0", + "jest-serializer": "^23.0.1", + "jest-worker": "^23.2.0", + "micromatch": "^2.3.11", + "sane": "^2.0.0" + } + }, + "jest-jasmine2": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-23.5.0.tgz", + "integrity": "sha512-xMgvDUvgqKpilsGnneC9Qr+uIlROxKI3UoJcHZeUlu6AKpQyEkGh0hKbfM0NaEjX5sy7WeFQEhcp/AiWlHcc0A==", + "dev": true, + "requires": { + "babel-traverse": "^6.0.0", + "chalk": "^2.0.1", + "co": "^4.6.0", + "expect": "^23.5.0", + "is-generator-fn": "^1.0.0", + "jest-diff": "^23.5.0", + "jest-each": "^23.5.0", + "jest-matcher-utils": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-snapshot": "^23.5.0", + "jest-util": "^23.4.0", + "pretty-format": "^23.5.0" + } + }, + "jest-leak-detector": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-23.5.0.tgz", + "integrity": "sha512-40VsHQCIEslxg91Zg5NiZGtPeWSBLXiD6Ww+lhHlIF6u8uSQ+xgiD6NbWHFOYs1VBRI+V/ym7Q1aOtVg9tqMzQ==", + "dev": true, + "requires": { + "pretty-format": "^23.5.0" + } + }, + "jest-matcher-utils": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-23.5.0.tgz", + "integrity": "sha512-hmQUKUKYOExp3T8dNYK9A9copCFYKoRLcY4WDJJ0Z2u3oF6rmAhHuZtmpHBuGpASazobBxm3TXAfAXDvz2T7+Q==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "jest-get-type": "^22.1.0", + "pretty-format": "^23.5.0" + } + }, + "jest-message-util": { + "version": "23.4.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-23.4.0.tgz", + "integrity": "sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0-beta.35", + "chalk": "^2.0.1", + "micromatch": "^2.3.11", + "slash": "^1.0.0", + "stack-utils": "^1.0.1" + } + }, + "jest-mock": { + "version": "23.2.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-23.2.0.tgz", + "integrity": "sha1-rRxg8p6HGdR8JuETgJi20YsmETQ=", + "dev": true + }, + "jest-regex-util": { + "version": "23.3.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-23.3.0.tgz", + "integrity": "sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U=", + "dev": true + }, + "jest-resolve": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-23.5.0.tgz", + "integrity": "sha512-CRPc0ebG3baNKz/QicIy5rGfzYpMNm8AjEl/tDQhehq/QC4ttyauZdvAXel3qo+4Gri9ljajnxW+hWyxZbbcnQ==", + "dev": true, + "requires": { + "browser-resolve": "^1.11.3", + "chalk": "^2.0.1", + "realpath-native": "^1.0.0" + } + }, + "jest-resolve-dependencies": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-23.5.0.tgz", + "integrity": "sha512-APZc/CjfzL8rH/wr+Gh7XJJygYaDjMQsWaJy4ZR1WaHWKude4WcfdU8xjqaNbx5NsVF2P2tVvsLbumlPXCdJOw==", + "dev": true, + "requires": { + "jest-regex-util": "^23.3.0", + "jest-snapshot": "^23.5.0" + } + }, + "jest-runner": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-23.5.0.tgz", + "integrity": "sha512-cpBvkBTVmW1ab1thbtoh2m6VnnM0BYKhj3MEzbOTZjPfzoIjUVIxLUTDobVNOvEK7aTEb/2oiPlNoOTSNJx8mw==", + "dev": true, + "requires": { + "exit": "^0.1.2", + "graceful-fs": "^4.1.11", + "jest-config": "^23.5.0", + "jest-docblock": "^23.2.0", + "jest-haste-map": "^23.5.0", + "jest-jasmine2": "^23.5.0", + "jest-leak-detector": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-runtime": "^23.5.0", + "jest-util": "^23.4.0", + "jest-worker": "^23.2.0", + "source-map-support": "^0.5.6", + "throat": "^4.0.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", + "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } + } + }, + "jest-runtime": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-23.5.0.tgz", + "integrity": "sha512-WzzYxYtoU8S1MJns0G4E3BsuFUTFBiu1qsk3iC9OTugzNQcQKt0BoOGsT7wXCKqkw/09QdV77vvaeJXST2Efgg==", + "dev": true, + "requires": { + "babel-core": "^6.0.0", + "babel-plugin-istanbul": "^4.1.6", + "chalk": "^2.0.1", + "convert-source-map": "^1.4.0", + "exit": "^0.1.2", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.1.11", + "jest-config": "^23.5.0", + "jest-haste-map": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-regex-util": "^23.3.0", + "jest-resolve": "^23.5.0", + "jest-snapshot": "^23.5.0", + "jest-util": "^23.4.0", + "jest-validate": "^23.5.0", + "micromatch": "^2.3.11", + "realpath-native": "^1.0.0", + "slash": "^1.0.0", + "strip-bom": "3.0.0", + "write-file-atomic": "^2.1.0", + "yargs": "^11.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", + "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + } + }, + "yargs-parser": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", + "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "jest-serializer": { + "version": "23.0.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-23.0.1.tgz", + "integrity": "sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU=", + "dev": true + }, + "jest-snapshot": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-23.5.0.tgz", + "integrity": "sha512-NYg8MFNVyPXmnnihiltasr4t1FJEXFbZFaw1vZCowcnezIQ9P1w+yxTwjWT564QP24Zbn5L9cjxLs8d6K+pNlw==", + "dev": true, + "requires": { + "babel-types": "^6.0.0", + "chalk": "^2.0.1", + "jest-diff": "^23.5.0", + "jest-matcher-utils": "^23.5.0", + "jest-message-util": "^23.4.0", + "jest-resolve": "^23.5.0", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^23.5.0", + "semver": "^5.5.0" + } + }, + "jest-util": { + "version": "23.4.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-23.4.0.tgz", + "integrity": "sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE=", + "dev": true, + "requires": { + "callsites": "^2.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.11", + "is-ci": "^1.0.10", + "jest-message-util": "^23.4.0", + "mkdirp": "^0.5.1", + "slash": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "jest-validate": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-23.5.0.tgz", + "integrity": "sha512-XmStdYhfdiDKacXX5sNqEE61Zz4/yXaPcDsKvVA0429RBu2pkQyIltCVG7UitJIEAzSs3ociQTdyseAW8VGPiA==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "jest-get-type": "^22.1.0", + "leven": "^2.1.0", + "pretty-format": "^23.5.0" + } + }, + "jest-watcher": { + "version": "23.4.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-23.4.0.tgz", + "integrity": "sha1-0uKM50+NrWxq/JIrksq+9u0FyRw=", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "string-length": "^2.0.0" + } + }, + "jest-worker": { + "version": "23.2.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-23.2.0.tgz", + "integrity": "sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk=", + "dev": true, + "requires": { + "merge-stream": "^1.0.1" + } + }, + "js-levenshtein": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.3.tgz", + "integrity": "sha512-/812MXr9RBtMObviZ8gQBhHO8MOrGj8HlEE+4ccMTElNA/6I3u39u+bhny55Lk921yn44nSZFy9naNLElL5wgQ==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + } + }, + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, + "requires": { + "jsonify": "~0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", + "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "kleur": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-2.0.2.tgz", + "integrity": "sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ==", + "dev": true + }, + "last-run": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", + "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", + "dev": true, + "requires": { + "default-resolution": "^2.0.0", + "es6-weak-map": "^2.0.1" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true, + "optional": true + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "^2.0.5" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "lead": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", + "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", + "dev": true, + "requires": { + "flush-write-stream": "^1.0.2" + } + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "level-blobs": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/level-blobs/-/level-blobs-0.1.7.tgz", + "integrity": "sha1-mrm5e7mfHtv594o0M+Ie1WOGva8=", + "dev": true, + "requires": { + "level-peek": "1.0.6", + "once": "^1.3.0", + "readable-stream": "^1.0.26-4" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "level-filesystem": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/level-filesystem/-/level-filesystem-1.2.0.tgz", + "integrity": "sha1-oArKmRnEpN+v3KaoEI0iWq3/Y7M=", + "dev": true, + "requires": { + "concat-stream": "^1.4.4", + "errno": "^0.1.1", + "fwd-stream": "^1.0.4", + "level-blobs": "^0.1.7", + "level-peek": "^1.0.6", + "level-sublevel": "^5.2.0", + "octal": "^1.0.0", + "once": "^1.3.0", + "xtend": "^2.2.0" + }, + "dependencies": { + "xtend": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.2.0.tgz", + "integrity": "sha1-7vax8ZjByN6vrYsXZaBNrUoBxak=", + "dev": true + } + } + }, + "level-fix-range": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/level-fix-range/-/level-fix-range-1.0.2.tgz", + "integrity": "sha1-vxW5Fa422EcMgh6IPd95zRZCCCg=", + "dev": true + }, + "level-hooks": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/level-hooks/-/level-hooks-4.5.0.tgz", + "integrity": "sha1-G5rmGSKTDzMF0aYfxNg8gQLA3ZM=", + "dev": true, + "requires": { + "string-range": "~1.2" + } + }, + "level-js": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/level-js/-/level-js-2.2.4.tgz", + "integrity": "sha1-vAVfQYBjXUSJtWHJSG+jcOjBFpc=", + "dev": true, + "requires": { + "abstract-leveldown": "~0.12.0", + "idb-wrapper": "^1.5.0", + "isbuffer": "~0.0.0", + "ltgt": "^2.1.2", + "typedarray-to-buffer": "~1.0.0", + "xtend": "~2.1.2" + }, + "dependencies": { + "object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=", + "dev": true + }, + "xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "dev": true, + "requires": { + "object-keys": "~0.4.0" + } + } + } + }, + "level-peek": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/level-peek/-/level-peek-1.0.6.tgz", + "integrity": "sha1-vsUccqgu5GTTNkNMfIdsP8vM538=", + "dev": true, + "requires": { + "level-fix-range": "~1.0.2" + } + }, + "level-sublevel": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/level-sublevel/-/level-sublevel-5.2.3.tgz", + "integrity": "sha1-dEwSxy0ucr543eO5tc2E1iGRQTo=", + "dev": true, + "requires": { + "level-fix-range": "2.0", + "level-hooks": ">=4.4.0 <5", + "string-range": "~1.2.1", + "xtend": "~2.0.4" + }, + "dependencies": { + "clone": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.1.19.tgz", + "integrity": "sha1-YT+2hjmyaklKxTJT4Vsaa9iK2oU=", + "dev": true + }, + "level-fix-range": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/level-fix-range/-/level-fix-range-2.0.0.tgz", + "integrity": "sha1-xBfWIVlEIVGhnZojZ4aPFyTC1Ug=", + "dev": true, + "requires": { + "clone": "~0.1.9" + } + }, + "object-keys": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.2.0.tgz", + "integrity": "sha1-zd7AKZiwkb5CvxA1rjLknxy26mc=", + "dev": true, + "requires": { + "foreach": "~2.0.1", + "indexof": "~0.0.1", + "is": "~0.2.6" + } + }, + "xtend": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.0.6.tgz", + "integrity": "sha1-XqZXptukRwacLlnFihE4ywxebO4=", + "dev": true, + "requires": { + "is-object": "~0.1.2", + "object-keys": "~0.2.0" + } + } + } + }, + "levelup": { + "version": "0.18.6", + "resolved": "https://registry.npmjs.org/levelup/-/levelup-0.18.6.tgz", + "integrity": "sha1-5qAcsIlhbI7MApHCqb0/DETj5es=", + "dev": true, + "requires": { + "bl": "~0.8.1", + "deferred-leveldown": "~0.2.0", + "errno": "~0.1.1", + "prr": "~0.0.0", + "readable-stream": "~1.0.26", + "semver": "~2.3.1", + "xtend": "~3.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "prr": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", + "integrity": "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "semver": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-2.3.2.tgz", + "integrity": "sha1-uYSPJdbPNjMwc+ye+IVtQvEjPlI=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "xtend": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz", + "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=", + "dev": true + } + } + }, + "leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "liftoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", + "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "findup-sync": "^2.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha1-81ypHEk/e3PaDgdJUwTxezH4fuU=", + "dev": true + }, + "magic-string": { + "version": "0.22.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", + "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==", + "dev": true, + "requires": { + "vlq": "^0.2.2" + } + }, + "make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dev": true, + "requires": { + "tmpl": "1.0.x" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "matchdep": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", + "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", + "dev": true, + "requires": { + "findup-sync": "^2.0.0", + "micromatch": "^3.0.4", + "resolve": "^1.4.0", + "stack-trace": "0.0.10" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } + } + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "merge": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz", + "integrity": "sha1-dTHjnUlJwoGma4xabgJl6LBYlNo=", + "dev": true + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime-db": { + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", + "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==", + "dev": true + }, + "mime-types": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", + "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", + "dev": true, + "requires": { + "mime-db": "~1.36.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mitt": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.1.3.tgz", + "integrity": "sha512-mUDCnVNsAi+eD6qA0HkRkwYczbLHJ49z17BGe2PYRhZL4wpZUFZGJHU7/5tmvohoma+Hdn0Vh/oJTiPEmgSruA==", + "dev": true + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "msrcrypto": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/msrcrypto/-/msrcrypto-1.5.3.tgz", + "integrity": "sha512-dEgu9OAAsknOoV3WEMZVyax46JeLqa81D/bHryo02qT3j16b+3a/f2AdKBAIlPDMtc7/ZWtpNNhdxq+csjQBAg==", + "dev": true + }, + "mute-stdout": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", + "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", + "dev": true + }, + "nan": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz", + "integrity": "sha512-F4miItu2rGnV2ySkXOQoA8FKz/SR2Q2sWP0sbTxNxz/tuokeC8WxOhPMcwi0qIyGtVn/rrSeLbvVkznqCdwYnw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, + "node-notifier": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.2.1.tgz", + "integrity": "sha512-MIBs+AAd6dJ2SklbbE8RUDRlIVhU8MaNLh1A9SUZDUHPiZkWLFde6UNwG41yQHZEToHgJMXqyVZ9UcS/ReOVTg==", + "dev": true, + "requires": { + "growly": "^1.3.0", + "semver": "^5.4.1", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "node-releases": { + "version": "1.0.0-alpha.11", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.0.0-alpha.11.tgz", + "integrity": "sha512-CaViu+2FqTNYOYNihXa5uPS/zry92I3vPU4nCB6JB3OeZ2UGtOpF5gRwuN4+m3hbEcL47bOXyun1jX2iC+3uEQ==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "node-rsa": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.4.2.tgz", + "integrity": "sha1-1jkXKewWqDDtWjgEKzFX0tXXJTA=", + "dev": true, + "requires": { + "asn1": "0.2.3" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "now-and-later": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.0.tgz", + "integrity": "sha1-vGHLtFbXnLMiB85HygUTb/Ln1u4=", + "dev": true, + "requires": { + "once": "^1.3.2" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "nwsapi": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.0.9.tgz", + "integrity": "sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "dependencies": { + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + } + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.reduce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", + "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "dependencies": { + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + } + } + }, + "octal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/octal/-/octal-1.0.0.tgz", + "integrity": "sha1-Y+cWKmjvvrniE1iNWOmJ0eXEUws=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + }, + "dependencies": { + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + } + } + }, + "ordered-read-streams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", + "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-asn1": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" + } + }, + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "requires": { + "path-root-regex": "^0.1.0" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pbkdf2": { + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", + "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-format": { + "version": "23.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-23.5.0.tgz", + "integrity": "sha512-iFLvYTXOn+C/s7eV+pr4E8DD7lYa2/klXMEz+lvH14qSDWAJ7S+kFmMe1SIWesATHQxopHTxRcB2nrpExhzaBA==", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0", + "ansi-styles": "^3.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + } + } + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-es6": { + "version": "0.11.6", + "resolved": "https://registry.npmjs.org/process-es6/-/process-es6-0.11.6.tgz", + "integrity": "sha1-xrs4n5qVH4K9TrFpYAEFvS/5x3g=", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "prompts": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-0.1.14.tgz", + "integrity": "sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w==", + "dev": true, + "requires": { + "kleur": "^2.0.1", + "sisteransi": "^0.1.1" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", + "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "randomatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", + "integrity": "sha512-KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "react-native-securerandom": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/react-native-securerandom/-/react-native-securerandom-0.1.1.tgz", + "integrity": "sha1-8TBiOkEsM4sK+t7bwgTFy7i/IHA=", + "dev": true, + "optional": true, + "requires": { + "base64-js": "*" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + } + } + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" + } + }, + "realpath-native": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.0.1.tgz", + "integrity": "sha512-W14EcXuqUvKP8dkWkD7B95iMy77lpMnlFXbbk409bQtNCbeu0kvRE5reo+yIZ3JXxg6frbGsz2DLQ39lrCB40g==", + "dev": true, + "requires": { + "util.promisify": "^1.0.0" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz", + "integrity": "sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw==", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "regenerator-runtime": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", + "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==", + "dev": true + }, + "regenerator-transform": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.13.3.tgz", + "integrity": "sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA==", + "dev": true, + "requires": { + "private": "^0.1.6" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpu-core": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.2.0.tgz", + "integrity": "sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw==", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^7.0.0", + "regjsgen": "^0.4.0", + "regjsparser": "^0.3.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.0.2" + } + }, + "regjsgen": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.4.0.tgz", + "integrity": "sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA==", + "dev": true + }, + "regjsparser": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.3.0.tgz", + "integrity": "sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "remove-bom-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", + "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5", + "is-utf8": "^0.2.1" + } + }, + "remove-bom-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", + "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", + "dev": true, + "requires": { + "remove-bom-buffer": "^3.0.0", + "safe-buffer": "^5.1.0", + "through2": "^2.0.3" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, + "replace-homedir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", + "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1", + "is-absolute": "^1.0.0", + "remove-trailing-separator": "^1.1.0" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "request-promise-core": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "dev": true, + "requires": { + "lodash": "^4.13.1" + } + }, + "request-promise-native": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.5.tgz", + "integrity": "sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU=", + "dev": true, + "requires": { + "request-promise-core": "1.1.1", + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "require-package-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", + "integrity": "sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=" + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-options": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", + "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", + "dev": true, + "requires": { + "value-or-function": "^3.0.0" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rollup": { + "version": "0.49.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.49.3.tgz", + "integrity": "sha512-n/vHRX4GhMIyGZEQRANcSFVtvz99bSRbNMuoC33ar9f4CViqffyF9WklLb2mxIQ6I/uFf7wDEpc66bXBFE7FvA==", + "dev": true + }, + "rollup-plugin-babel": { + "version": "github:rollup/rollup-plugin-babel#55ade45d33d0e985c5d6490667c6ea917d61714f", + "from": "github:rollup/rollup-plugin-babel", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "rollup-pluginutils": "^2.3.0" + } + }, + "rollup-plugin-commonjs": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.4.1.tgz", + "integrity": "sha512-mg+WuD+jlwoo8bJtW3Mvx7Tz6TsIdMsdhuvCnDMoyjh0oxsVgsjB/N0X984RJCWwc5IIiqNVJhXeeITcc73++A==", + "dev": true, + "requires": { + "acorn": "^5.2.1", + "estree-walker": "^0.5.0", + "magic-string": "^0.22.4", + "resolve": "^1.4.0", + "rollup-pluginutils": "^2.0.1" + } + }, + "rollup-plugin-json": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-3.0.0.tgz", + "integrity": "sha512-WUAV9/I/uFWvHhyRTqFb+3SIapjISFJS7R1xN/cXxWESrfYo9I8ncHI7AxJHflKRXhBVSv7revBVJh2wvhWh5w==", + "dev": true, + "requires": { + "rollup-pluginutils": "^2.2.0" + } + }, + "rollup-plugin-node-builtins": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz", + "integrity": "sha1-JKH+1KQyV7a2Q3HYq8bOGrFFl+k=", + "dev": true, + "requires": { + "browserify-fs": "^1.0.0", + "buffer-es6": "^4.9.2", + "crypto-browserify": "^3.11.0", + "process-es6": "^0.11.2" + } + }, + "rollup-plugin-node-globals": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-globals/-/rollup-plugin-node-globals-1.2.1.tgz", + "integrity": "sha512-PZgkJkVLWZRdwx33GaAeD92UjmvCM7kM9i/8wgoe9hN901RrjVs8eVjg5DzQ+2kGZSiqyx0aiIunLnOOCWshWQ==", + "dev": true, + "requires": { + "acorn": "^5.5.0", + "buffer-es6": "^4.9.3", + "estree-walker": "^0.5.1", + "magic-string": "^0.22.4", + "process-es6": "^0.11.6", + "rollup-pluginutils": "^2.0.1" + } + }, + "rollup-plugin-node-resolve": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz", + "integrity": "sha512-9zHGr3oUJq6G+X0oRMYlzid9fXicBdiydhwGChdyeNRGPcN/majtegApRKHLR5drboUvEWU+QeUmGTyEZQs3WA==", + "dev": true, + "requires": { + "builtin-modules": "^2.0.0", + "is-module": "^1.0.0", + "resolve": "^1.1.6" + }, + "dependencies": { + "builtin-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-2.0.0.tgz", + "integrity": "sha512-3U5kUA5VPsRUA3nofm/BXX7GVHKfxz0hOBAPxXrIvHzlDRkQVqEn6yi8QJegxl4LzOHLdvb7XF5dVawa/VVYBg==", + "dev": true + } + } + }, + "rollup-plugin-replace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-replace/-/rollup-plugin-replace-2.0.0.tgz", + "integrity": "sha512-pK9mTd/FNrhtBxcTBXoh0YOwRIShV0gGhv9qvUtNcXHxIMRZMXqfiZKVBmCRGp8/2DJRy62z2JUE7/5tP6WxOQ==", + "dev": true, + "requires": { + "magic-string": "^0.22.4", + "minimatch": "^3.0.2", + "rollup-pluginutils": "^2.0.1" + } + }, + "rollup-plugin-root-import": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-root-import/-/rollup-plugin-root-import-0.2.3.tgz", + "integrity": "sha512-RD1iCxGgXDKSeZ2JQRZCO9gt+7OmcHaUafqmyOAyZUpFOI85mcSbw6vXgEFyUYI38zfdo7ZduLSp/Zqmzo7zdQ==", + "dev": true + }, + "rollup-plugin-uglify-es": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-uglify-es/-/rollup-plugin-uglify-es-0.0.1.tgz", + "integrity": "sha1-5FZE8raFpZq9uTY0ByB6A6e1qbc=", + "requires": { + "uglify-es": "3.0.3" + }, + "dependencies": { + "uglify-es": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.0.3.tgz", + "integrity": "sha1-Y8yEqpRos0lzpIh3h8ZMAaiodXY=", + "requires": { + "commander": "~2.9.0", + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0" + } + } + } + }, + "rollup-pluginutils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.1.tgz", + "integrity": "sha512-JZS8aJMHEHhqmY2QVPMXwKP6lsD1ShkrcGYjhAIvqKKdXQyPHw/9NF0tl3On/xOJ4ACkxfeG7AF+chfCN1NpBg==", + "dev": true, + "requires": { + "estree-walker": "^0.5.2", + "micromatch": "^2.3.11" + } + }, + "rollup-stream": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/rollup-stream/-/rollup-stream-1.24.1.tgz", + "integrity": "sha512-iQ159xbWSOPc7ey8tjEYf7pCaQwBz3ov37KNCeDewqh6Qj1gntAgZSmmEJIPs2niXMDNqVZ3rnTFXBXhZ+sYSg==", + "dev": true, + "requires": { + "rollup": "^0.49.2" + } + }, + "rsvp": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", + "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sane": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/sane/-/sane-2.5.2.tgz", + "integrity": "sha1-tNwYYcIbQn6SlQej51HiosuKs/o=", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "capture-exit": "^1.2.0", + "exec-sh": "^0.2.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.2.3", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5", + "watch": "~0.18.0" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + }, + "semver-greatest-satisfied-range": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", + "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", + "dev": true, + "requires": { + "sver-compat": "^1.5.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "sisteransi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-0.1.1.tgz", + "integrity": "sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g==", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "sparkles": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", + "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "dev": true + }, + "spdx-correct": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", + "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", + "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", + "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", "dev": true }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "str2buf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/str2buf/-/str2buf-1.3.0.tgz", + "integrity": "sha512-xIBmHIUHYZDP4HyoXGHYNVmxlXLXDrtFHYT0eV6IOdEj3VO9ccaF1Ejl9Oq8iFjITllpT8FhaXb4KsNmw+3EuA==", + "dev": true + }, + "stream-exhaust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", + "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", + "dev": true + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "string-length": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", + "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", + "dev": true, + "requires": { + "astral-regex": "^1.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string-range": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/string-range/-/string-range-1.2.2.tgz", + "integrity": "sha1-qJPtNH5yKZvIO++78qaSqNI51d0=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "sver-compat": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", + "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", + "dev": true, + "requires": { + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "symbol-tree": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz", + "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=", + "dev": true + }, + "test-exclude": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-4.2.2.tgz", + "integrity": "sha512-2kTGf+3tykCfrWVREgyTR0bmVO0afE6i7zVXi/m+bZZ8ujV89Aulxdcdv32yH+unVFg3Y5o6GA8IzsHnGQuFgQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^3.0.0", + "require-main-filename": "^1.0.1" + } + }, + "text-encoding": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", + "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", + "dev": true + }, + "throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, + "through2-filter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", + "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "dev": true, + "requires": { + "through2": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "dev": true + }, + "tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", + "dev": true + }, + "to-absolute-glob": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", + "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "is-negated-glob": "^1.0.0" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + } + } + }, + "to-through": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", + "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", + "dev": true, + "requires": { + "through2": "^2.0.3" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } }, - "test": { + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tunnel-agent": { "version": "0.6.0", - "resolved": "https://registry.npmjs.org/test/-/test-0.6.0.tgz", - "integrity": "sha1-WYasRF7Bd1QyJRLRBLoyyKY+k44=", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typedarray-to-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz", + "integrity": "sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw=", + "dev": true + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "optional": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true, + "optional": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "optional": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true, + "optional": true + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "optional": true + }, + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true + }, + "undertaker": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.0.tgz", + "integrity": "sha1-M52kZGJS0ILcN45wgGcpl1DhG0k=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "bach": "^1.0.0", + "collection-map": "^1.0.0", + "es6-weak-map": "^2.0.1", + "last-run": "^1.1.0", + "object.defaults": "^1.0.0", + "object.reduce": "^1.0.0", + "undertaker-registry": "^1.0.0" + } + }, + "undertaker-registry": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", + "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", + "dev": true + }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz", + "integrity": "sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz", + "integrity": "sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg==", + "dev": true + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-stream": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", + "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "dev": true, + "requires": { + "json-stable-stringify": "^1.0.0", + "through2-filter": "^2.0.0" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "v8flags": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz", + "integrity": "sha512-iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "value-or-function": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", + "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vinyl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", + "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "dev": true, + "requires": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + } + }, + "vinyl-fs": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", + "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "dev": true, + "requires": { + "fs-mkdirp-stream": "^1.0.0", + "glob-stream": "^6.1.0", + "graceful-fs": "^4.0.0", + "is-valid-glob": "^1.0.0", + "lazystream": "^1.0.0", + "lead": "^1.0.0", + "object.assign": "^4.0.4", + "pumpify": "^1.3.5", + "readable-stream": "^2.3.3", + "remove-bom-buffer": "^3.0.0", + "remove-bom-stream": "^1.2.0", + "resolve-options": "^1.1.0", + "through2": "^2.0.0", + "to-through": "^2.0.0", + "value-or-function": "^3.0.0", + "vinyl": "^2.0.0", + "vinyl-sourcemap": "^1.1.0" + } + }, + "vinyl-source-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-2.0.0.tgz", + "integrity": "sha1-84pa+53R6Ttl1VBGmsYYKsT1S44=", + "dev": true, + "requires": { + "through2": "^2.0.3", + "vinyl": "^2.1.0" + } + }, + "vinyl-sourcemap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", + "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", + "dev": true, + "requires": { + "append-buffer": "^1.0.2", + "convert-source-map": "^1.5.0", + "graceful-fs": "^4.1.6", + "normalize-path": "^2.1.1", + "now-and-later": "^2.0.0", + "remove-bom-buffer": "^3.0.0", + "vinyl": "^2.0.0" + } + }, + "vlq": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz", + "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==", + "dev": true + }, + "w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2" + } + }, + "walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dev": true, + "requires": { + "makeerror": "1.0.x" + } + }, + "watch": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/watch/-/watch-0.18.0.tgz", + "integrity": "sha1-KAlUdsbffJDJYxOJkMClQj60uYY=", + "dev": true, + "requires": { + "exec-sh": "^0.2.0", + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "webcrypto-shim": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/webcrypto-shim/-/webcrypto-shim-0.1.4.tgz", + "integrity": "sha512-I2lnL+K2oPNE9ryVHwo42oDnt8XQ9E1KKMGCmcT7OXaAKPmUeCi/G0nUgLR6M6Ztj05ZCxLMGf5bXNaSo+wURg==", + "dev": true + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.4.tgz", + "integrity": "sha512-vM9KWN6MP2mIHZ86ytcyIv7e8Cj3KTfO2nd2c8PFDqcI4bxFmQp83ibq4wadq7rL9l9sZV6o9B0LTt8ygGAAXg==", + "dev": true, + "requires": { + "iconv-lite": "0.4.23" + } + }, + "whatwg-mimetype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.1.0.tgz", + "integrity": "sha512-FKxhYLytBQiUKjkYteN71fAUA3g6KpNXoho1isLiLSB3N1G4F35Q5vUxWfKFhBwi5IWF27VE6WxhrnnC+m0Mew==", + "dev": true + }, + "whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write-file-atomic": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", + "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", "dev": true, "requires": { - "ansi-font": "0.0.2" + "camelcase": "^3.0.0" } } } diff --git a/package.json b/package.json @@ -1,10 +1,11 @@ { - "name": "urbit-ob", - "version": "1.0.0", + "name": "ob-js", + "version": "1.1.0", "description": "utilities to convert urbit ship names back and forth between @p and @ud", - "main": "index.js", + "main": "dist/index.js", "scripts": { - "test": "node test/main.js" + "test": "jest", + "build": "gulp" }, "keywords": [ "urbit" @@ -12,10 +13,27 @@ "author": "~poldec-tonteg", "license": "ISC", "devDependencies": { - "test": "^0.6.0" + "@babel/core": "^7.0.0", + "@babel/preset-env": "^7.0.0-beta.34", + "isomorphic-webcrypto": "^1.6.0", + "gulp": "github:gulpjs/gulp#4.0", + "rollup-plugin-babel": "github:rollup/rollup-plugin-babel", + "rollup-plugin-commonjs": "^8.3.0", + "rollup-plugin-json": "^3.0.0", + "rollup-plugin-node-builtins": "^2.1.2", + "rollup-plugin-node-resolve": "^3.3.0", + "rollup-plugin-replace": "^2.0.0", + "rollup-plugin-root-import": "^0.2.3", + "rollup-stream": "^1.24.1", + "vinyl-source-stream": "^2.0.0", + "babel-jest": "^23.4.2", + "jest": "^23.5.0", + "regenerator-runtime": "^0.12.1", + "rollup-plugin-node-globals": "^1.2.1" }, "dependencies": { + "babel-plugin-lodash": "^3.3.4", "bn.js": "^4.11.8", - "lodash": "^4.17.10" + "rollup-plugin-uglify-es": "0.0.1" } } diff --git a/src/index.js b/src/index.js @@ -0,0 +1,464 @@ +/* + * Utility methods + */ + +// var bn = require('bignum') +const bnjs = require('bn.js') +const { reduce, isUndefined, isString, every, map } = require('lodash') + +const raku = [ + 3077398253, + 3995603712, + 2243735041, + 1261992695, +] + +const pre = ` +dozmarbinwansamlitsighidfidlissogdirwacsabwissib\ +rigsoldopmodfoglidhopdardorlorhodfolrintogsilmir\ +holpaslacrovlivdalsatlibtabhanticpidtorbolfosdot\ +losdilforpilramtirwintadbicdifrocwidbisdasmidlop\ +rilnardapmolsanlocnovsitnidtipsicropwitnatpanmin\ +ritpodmottamtolsavposnapnopsomfinfonbanmorworsip\ +ronnorbotwicsocwatdolmagpicdavbidbaltimtasmallig\ +sivtagpadsaldivdactansidfabtarmonranniswolmispal\ +lasdismaprabtobrollatlonnodnavfignomnibpagsopral\ +bilhaddocridmocpacravripfaltodtiltinhapmicfanpat\ +taclabmogsimsonpinlomrictapfirhasbosbatpochactid\ +havsaplindibhosdabbitbarracparloddosbortochilmac\ +tomdigfilfasmithobharmighinradmashalraglagfadtop\ +mophabnilnosmilfopfamdatnoldinhatnacrisfotribhoc\ +nimlarfitwalrapsarnalmoslandondanladdovrivbacpol\ +laptalpitnambonrostonfodponsovnocsorlavmatmipfip\ +` + +const suf = ` +zodnecbudwessevpersutletfulpensytdurwepserwylsun\ +rypsyxdyrnuphebpeglupdepdysputlughecryttyvsydnex\ +lunmeplutseppesdelsulpedtemledtulmetwenbynhexfeb\ +pyldulhetmevruttylwydtepbesdexsefwycburderneppur\ +rysrebdennutsubpetrulsynregtydsupsemwynrecmegnet\ +secmulnymtevwebsummutnyxrextebfushepbenmuswyxsym\ +selrucdecwexsyrwetdylmynmesdetbetbeltuxtugmyrpel\ +syptermebsetdutdegtexsurfeltudnuxruxrenwytnubmed\ +lytdusnebrumtynseglyxpunresredfunrevrefmectedrus\ +bexlebduxrynnumpyxrygryxfeptyrtustyclegnemfermer\ +tenlusnussyltecmexpubrymtucfyllepdebbermughuttun\ +bylsudpemdevlurdefbusbeprunmelpexdytbyttyplevmyl\ +wedducfurfexnulluclennerlexrupnedlecrydlydfenwel\ +nydhusrelrudneshesfetdesretdunlernyrsebhulryllud\ +remlysfynwerrycsugnysnyllyndyndemluxfedsedbecmun\ +lyrtesmudnytbyrsenwegfyrmurtelreptegpecnelnevfes\ +` + +// groups suffixes into array of syllables +const suffixes = suf.match(/.{1,3}/g) + +// groups prefixes into array of syllables +const prefixes = pre.match(/.{1,3}/g) + +// Get item at an index in array +const getAt = (arr, index) => arr[index] + +// Gets the length of an array +const len = arr => arr.length + +// gets the last index as an int from an array +const lid = arr => arr.length - 1 + +// wraps indexOf +const indexOf = (arr, str) => arr.indexOf(str) + +// is a int odd? +const isOdd = n => n % 2 !== 0 + +// is a int even? +const isEven = n => !isOdd(n) + +// Makes an array of length num populated with its indices +const seq = n => Array.from(Array(n), (x, i) => i) + +// Gets the prefix at an index +const getPrefix = i => getAt(prefixes, i) + +// Gets the suffix at an index +const getSuffix = i => getAt(suffixes, i) + +// Checks if a syllable exists in both suffixes and prefixes +const doesExist = str => [...suffixes, ...prefixes].includes(str) + +// Checks if a suffix exists +const doesSuffixExist = str => suffixes.includes(str) + +// Checks if a prefix exists +const doesPrefixExist = str => prefixes.includes(str) + +// Gets the index of a prefix +const getPrefixIndex = str => indexOf(prefixes, str) + +// Gets the index of a suffix +const getSuffixIndex = str => indexOf(suffixes, str) + +// converts a binary string to a base-10 integer +const bin2dec = str => parseInt(str, 2).toString(10) + +// converts a base-10 integer to a binary string +const dec2bin = num => num.toString(2) + +// converts an @P syllable index to a binary string +const syl2bin = index => dec2bin(index).padStart(8, '0') + +// converts a @P string to an array of syllables +const patp2arr = p => p.replace(/[\^~-]/g,'').match(/.{1,3}/g) + +// converts an array of syllables to a string @P +const arr2patp = a => reduce(a, (acc, syl, i) => isEven(i) + ? i === 0 + ? `~${acc}${syl}` + ? i === 16 + : `${acc}^${syl}` + : `${acc}-${syl}` + : `${acc}${syl}` +, '') + + +const feen = pyn => { + const f = 4294967295 + if (pyn >= 0x10000 && pyn <= 0xFFFFFFFF) { + const tmp = fice(pyn - 0x10000) + 0x10000 + return tmp + } + if (pyn >= 0x100000000 && pyn <= 0xffffffffffffffff) { + const pynBn = new bnjs(pyn) + const lo = pynBn.and(f) + const hi = pynBn.and('18446744069414584000') + return hi.or(feen(lo)).toNumber() + } + return pyn +} + + +const fend = cry => { + if (cry >= 0x10000 && cry <= 0xFFFFFFFF) { + const res = new bnjs(teil(cry - 0x10000)) + const resNum = res.add(new bnjs(65536)).toNumber() + return resNum + } + if (cry >= 0x100000000 && cry <= bn(0xffffffffffffffff)) { + const cryBn = new bnjs(cry) + const lo = cryBn.and(new bnjs('0xFFFFFFFF')) + const hi = cryBn.and(new bnjs('0xffffffff00000000')) + const res = hi.or(fend(lo)) + return res.toNumber() + } + return cry +} + + + +const fice = nor => { + let sel = [ + nor % 65535, + nor / 65535 + ] + for (var i = 0; i < 4; i++) { + sel = rynd(i, sel[0], sel[1]) + } + + const res = 65535 * sel[0] + sel[1] + return res +} + + +const teil = vip => { + let sel = [ + vip % 65535, + vip / 65535 + //vip % 0xFFFF, + //vip / 0x10000 + ] + // maybe the for loops got borked in lua conversion + for (var i = 3; i > -1; i--) { + sel = rund(i, sel[0], sel[1]) + } + //var res = bn(bn(0xFFFF).mul(sel[0])).add(sel[1]) + const r1 = new bnjs(65535) + const res = r1.mul(new bnjs(sel[0])).add(new bnjs(sel[1])) + return res.toNumber() +} + + +const rynd = (n, l, r) => { + l = Math.floor(l) + const res = [r, 0] + const m = isEven(n) + ? new bnjs(65535) + : new bnjs(65536) + + //res[1] = (bn(muk(raku[n], 2, r)).add(l)) % m + const r1 = new bnjs(muk(raku[n], 2, r)) + const r2 = r1.add(new bnjs(l)).mod(m) + res[1] = r2.toNumber() + return res +} + + +const rund = (n, l, r) => { + l = Math.floor(l) + const res = [r, 0] + const m = isEven(n) + ? new bnjs(65535) + : new bnjs(65536) + const h = new bnjs(muk(raku[n], 2, r)) + const r1 = new bnjs(m + l) + const r2 = r1.sub(h.mod(m)).mod(m).toString() + res[1] = r2 + return res +} + + +const muk = (syd, len, key) => { + //key = bn(key) + const lo = key & 0xFF + const hi = (key & 0xFF00) / 256 + const res = murmur3(String.fromCharCode(lo) + String.fromCharCode(hi), syd) + return res +} + + +const murmur3 = (data, seed) => { + if (!seed) seed = 0 + + const c1 = new bnjs(3432918353) + const c2 = new bnjs(461845907) + + const f = 4294967295 + + const length = new bnjs(len(data)) + let h1 = new bnjs(seed) + let k1 + const roundedEnd = length & 0xFFFFFFFC + // this will likely need to be redone with bignum + for (var i = 0; i < roundedEnd; i += 4) { + var x = data.charCodeAt(i + 3) ? data.charCodeAt(i + 3) : 0 + k1 = bn(data.charCodeAt(i) & 0xFF) + | ((data.charCodeAt(i + 1) & 0xFF) << 8) + | ((data.charCodeAt(i + 2) & 0xFF) << 16) + | (x << 24) + k1 = k1 * c1 + k1 = (k1 << 15) | ((k1 & 0xFFFFFFFF) >> 17) + k1 = k1 * c2 + h1 = h1 ^ k1 + h1 = (h1 << 13) | ((h1 & 0xFFFFFFFF) >> 19) + h1 = h1 * 5 + 3864292196 + } + + k1 = 0 + const val = length & 0x03 + if (val == 3) { + k1 = (data.charCodeAt(roundedEnd + 2) & 0xFF) << 16 + } + if (val == 3 || val == 2) { + k1 = k1 | (data.charCodeAt(roundedEnd + 1) & 0xFF) << 8 + } + if (val == 3 || val == 2 || val == 1) { + k1 = k1 | (data.charCodeAt(roundedEnd) & 0xFF) + k1 = new bnjs(k1 * c1) + var k2 = new bnjs(k1.and(new bnjs(f)).shrn(17)) + k1 = k1.shln(15).or(k2) + k1 = k1.mul(c2) + h1 = h1.xor(k1) + } + h1 = h1.xor(length) + h1 = h1.xor(h1.and(new bnjs(f)).shrn(16)) + h1 = h1.mul(new bnjs(2246822507)) + h1 = h1.xor(h1.and(new bnjs(f)).shrn(13)) + h1 = h1.mul(new bnjs(3266489909)) + h1 = h1.xor(h1.and(new bnjs(f)).shrn(16)) + return h1.and(new bnjs(f)).toNumber() +} + + +/* + * Public methods + * -- patp2add ( ship name ) + * -- => address number + * -- to{Galaxy,Star,Planet}Ship ( address number ) + * -- => ship name + * ####################### NOT YET IMPLEMENTED ########################## + * -- clan ( ship name or address number (int or bn) ) + * -- => "galaxy", "star", "planet", "moon" or "comet" + * -- sein ( ship name or address number (int or bn) ) + * -- => parent name or address number + * + */ + + + +// returns the class of a ship from it's name +const tierOfpatp = name => { + const l = len(patp2arr(name)) + if (l <= 1) return 'galaxy' + if (l <= 2) return 'star' + if (l <= 4) return 'planet' + if (l <= 8) return 'moon' + if (l <= 16) return 'comet' + return 'invalid' +} + + +const tierOfadd = addr => { + const b = len(dec2bin(addr)) + if (b <= 8) return 'galaxy' + if (b <= 16) return 'star' + if (b <= 32) return 'planet' + if (b <= 64) return 'moon' + if (b <= 128) return 'comet' + return 'invalid' +} + + +const add2patp = addr => { + const b = len(dec2bin(addr)) + if (b <= 8) return toGalaxyName(addr) + if (b <= 16) return toStarName(addr) + if (b <= 32) return toPlanetName(addr) + if (b <= 64) console.error('Convert to moon not currently supported.') + if (b <= 128) console.error('Convert to comet not currently supported.') + return 'invalid' +} + + +// converts a string @P into an integer address +const patp2add = (name, unscramble) => { + + // set a default true value for unscramble + if (isUndefined(unscramble)) unscramble = true + + // if the name is invalid, return undefined + if (!isValidName(name)) return + + // if the name is a string, convert to array of syllables + if (isString(name)) name = patp2arr(name) + + // concat 8 bit binary numbers of syllable indexes + const addr = reduce(name, (acc, syl, index) => { + return isOdd(index) || len(name) === 1 + ? acc + syl2bin(getSuffixIndex(syl)) + : acc + syl2bin(getPrefixIndex(syl)) + }, '') + + // convert back to base 10 + const addrInt = bin2dec(addr) + + // if unscramble is true, use fend() + return unscramble + ? fend(addrInt) + : addrInt +} + + +// Checks if a string @P is valid +const isValidName = name => { + // convert string @P to array of syllables + const sylArr = patp2arr(name) + + // Quickly fail if length of @p is greater than 1 and odd + if (isOdd(len(sylArr)) && len(sylArr) !== 1) return false + + // check if each syllable exists + const tests = map(sylArr, (syl, index) => isOdd(index) || len(sylArr) === 1 + ? doesSuffixExist(syl) + : doesPrefixExist(syl)) + + // if all syllables exist, return true, if any single syllables don't exist, + // return false + return every(tests, test => test === true) +} + + +// converts a galaxy address to a string @P +const toGalaxyName = galaxy => _add2patp(galaxy, 1) + + +// converts a star address to a string @P +const toStarName = star => _add2patp(star, 2) + + +// converts a planet address to a string @P +const toPlanetName = (scrambled, scramble) => { + if (isUndefined(scramble)) scramble = true + return _add2patp(scrambled, 4, scramble) +} + + +// converts an integer address to a string @P +const _add2patp = (addr, minBytes, scramble) => { + if (isUndefined(scramble)) scramble = true + + if (!minBytes) { + if (addr < 0x100) { + minBytes = 1 + } else if (addr < 0x10000) { + minBytes = 2 + } else { + minBytes = 4 + } + } + + if (minBytes === 4 && scramble) addr = feen(addr) + + const name = reduce(seq(minBytes), (acc, index) => { + const byt = Math.floor(addr % 256) + + addr = addr / 256 + + const syllable = isOdd(index) + ? getPrefix(byt) + : getSuffix(byt) + + return index === 2 + ? acc = syllable + '-' + acc + : acc = syllable + acc + }, '') + + return name +} + + +module.exports = { + patp2add: patp2add, + add2patp: add2patp, + + tierOfpatp: tierOfpatp, + tierOfadd: tierOfadd, + + toGalaxyName: toGalaxyName, + toStarName: toStarName, + toPlanetName: toPlanetName, + isValidName: isValidName, + + _add2patp: _add2patp, + _getsuffix: getSuffix, + _muk: muk, + _feen: feen, + _fend: fend, + _teil: teil, + _getAt: getAt, + _len: len, + _lid: lid, + _indexOf: indexOf, + _isOdd: isOdd, + _isEven: isEven, + _seq: seq, + _getPrefix: getPrefix, + _getSuffix: getSuffix, + _doesExist: doesExist, + _doesSuffixExist: doesSuffixExist, + _doesPrefixExist: doesPrefixExist, + _getPrefixIndex: getPrefixIndex, + _getSuffixIndex: getSuffixIndex, + _bin2dec: bin2dec, + _dec2bin: dec2bin, + _syl2bin: syl2bin, +} diff --git a/test/.main.js.swp b/test/.main.js.swp Binary files differ. diff --git a/test/core.test.js b/test/core.test.js @@ -0,0 +1,110 @@ +const ob = require('../src/index.js'); + + +test('test patp2add lex', () => { + expect(ob.patp2add('lex')).toEqual('200'); +}); + +test('test patp2add samzod', () => { + expect(ob.patp2add('samzod')).toEqual('1024'); +}); + +test('test patp2add sambinzod', () => { + expect(ob.patp2add('sambinzod')).toBe(undefined); +}); + +test('test patp2add poldec-tonteg', () => { + expect(ob.patp2add('poldec-tonteg')).toBe(9896704); +}); + +test('convert ship num 200 to ~lex', () => { + expect(ob.toGalaxyName(200)).toBe('lex'); +}); + +test('convert ship num 512 to ~binzod', () => { + expect(ob.toStarName(512)).toBe('binzod'); +}); + +test('convert ship num 9896704 to ~poldec-tonteg', () => { + expect(ob.toPlanetName(9896704)).toBe('poldec-tonteg'); +}); + +test('generic explicit conversion: 0 to zod', () => { + expect(ob._add2patp(0, 1, false)).toBe('zod'); +}); + +test('generic explicit conversion: 512 to ~binzod', () => { + expect(ob._add2patp(512, 2, false)).toBe('binzod'); +}); + +test('generic explicit conversion: 9896704 to poldec-tonteg', () => { + expect(ob._add2patp(9896704, 4, true)).toBe('poldec-tonteg'); +}); + +test('generic simple conversion: 0 to zod', () => { + expect(ob.add2patp(0)).toBe('zod'); +}); + +test('generic simple conversion: 512 to binzod', () => { + expect(ob.add2patp(512)).toBe('binzod'); +}); + +test('generic simple conversion: 9896704 to poldec-tonteg', () => { + expect(ob.add2patp(9896704)).toBe('poldec-tonteg'); +}); + +test('identifies poldec-tonteg as a ship', () => { + expect(ob.isValidName('poldec-tonteg')).toBe(true); +}); + +test('invalidates aaa as not a ship', () => { + expect(ob.isValidName('aaa')).toBe(false); +}); + +test('invalidates aaaaaa as not a ship', () => { + expect(ob.isValidName('aaaaaa')).toBe(false); +}); + +test('invalidates ////// as not a ship', () => { + expect(ob.isValidName('//////')).toBe(false); +}); + +test('invalidates //////////// as not a ship', () => { + expect(ob.isValidName('////////////')).toBe(false); +}); + +test('invalidates //////-////// as not a ship', () => { + expect(ob.isValidName('//////-//////')).toBe(false); +}); + +test('identifies poldec-tonteg as a planet', () => { + expect(ob.tierOfpatp('poldec-tonteg')).toBe('planet'); +}); + +test('identifies poldec as a star', () => { + expect(ob.tierOfpatp('poldec')).toBe('star'); +}); + +test('identifies zod as a galaxy from @P', () => { + expect(ob.tierOfpatp('zod')).toBe('galaxy'); +}); + +test('identifies binzod as a star from @P', () => { + expect(ob.tierOfpatp('binzod')).toBe('star'); +}); + +test('identifies poldec-tonteg as a star from @P', () => { + expect(ob.tierOfpatp('poldec-tonteg')).toBe('planet'); +}); + +test('identifies zod as a galaxy from address', () => { + expect(ob.tierOfadd(0)).toBe('galaxy'); +}); + +test('identifies binzod as a star from address', () => { + expect(ob.tierOfadd(512)).toBe('star'); +}); + +test('identifies poldec-tonteg as a planet from address', () => { + expect(ob.tierOfadd(9896704)).toBe('planet'); +}); diff --git a/test/main.js b/test/main.js @@ -1,31 +0,0 @@ -//var assert = require('assert'); -var nom = require('../index.js'); -//var bn = require('bignum'); - -exports['test that stops execution'] = function(assert) { - assert.equal(nom._feen(0x10100), 0x63b30e1c, 'test feen'); - assert.equal(nom._fend(0x63b30e1c), 0x10100, 'test fend'); - assert.equal(nom._muk(0, 2, 0x101), 0x42081a9b, 'test muk 1'); - assert.equal(nom._muk(0, 2, 0x201), 0x64c7667e, 'test muk 2'); - - // assert.equal(nom._wordtonum('zod'), 0, 'test converting one syllable word to num'); - // assert.equal(nom._wordtonum('samzod'), 1024, 'test converting two syllable word to num'); - // assert.equal((typeof nom._wordtonum('sambinzod')), 'undefined', 'test rejecting three syllable word to num'); - - assert.equal(nom.toAddress('lex'), 200, 'convert ship name ~lex to number 200'); - assert.equal(nom.toAddress('binzod'), 512, 'convert ship name ~binzod to number 512'); - assert.equal(nom.toAddress('poldec-tonteg'), 9896704, 'convert ship name ~poldec-tonteg to number 9896704'); - assert.equal(nom._getsuffix(200), 'lex', 'gets correct suffix'); - assert.equal(nom.toGalaxyName(200), 'lex', 'convert ship num 200 to ~lex'); - assert.equal(nom.toStarName(512), 'binzod', 'convert ship num 512 to ~binzod'); - assert.equal(nom.toPlanetName(9896704), 'poldec-tonteg', 'convert number 9896704 to ship name ~poldec-tonteg'); - assert.equal(nom.isValidName('poldec-tonteg'), true, 'identifies poldec-tonteg as a ship'); - assert.equal(nom.isValidName('zod'), true, 'identifies zod as a ship'); - assert.equal(nom.isValidName('aaa'), false, 'identifies aaa as not ship'); - assert.equal(nom.isValidName("aaaaaa"), false, 'invalidates star'); - assert.equal(nom.isValidName("//////"), false, 'invalidates star'); - assert.equal(nom.isValidName("////////////"), false, 'invalidates planet'); - assert.equal(nom.isValidName("//////-//////"), false, 'invalidates planet'); -} - -if (module == require.main) require('test').run(exports); diff --git a/test/util.test.js b/test/util.test.js @@ -0,0 +1,53 @@ +const ob = require('../src/index.js'); + +test('test feen', () => { + expect(ob._feen(0x10100)).toEqual(0x63b30e1c); +}); + +test('test fend', () => { + expect(ob._fend(0x63b30e1c)).toEqual(0x10100); +}); + +test('test muk 1', () => { + expect(ob._muk(0, 2, 0x101)).toEqual(0x42081a9b); +}); + +test('test muk 2', () => { + expect(ob._muk(0, 2, 0x201)).toEqual(0x64c7667e); +}); + +test('getAt', () => { + expect(ob._getAt(['a', 'b', 'c'], 1)).toEqual('b'); +}); + +test('len', () => { + expect(ob._len(['a', 'b', 'c'])).toEqual(3); +}); + +test('lid', () => { + expect(ob._lid(['a', 'b', 'c'])).toEqual(2); +}); + +test('indexOf', () => { + expect(ob._indexOf(['a', 'b', 'c'], 'b')).toEqual(1); +}); + +test('isOdd 3', () => { + expect(ob._isOdd(3)).toEqual(true); +}); + +test('isOdd 0', () => { + expect(ob._isOdd(0)).toEqual(false); +}); + +test('isEven 3', () => { + expect(ob._isEven(3)).toEqual(false); +}); + +test('isEven 0', () => { + expect(ob._isEven(0)).toEqual(true); +}); + +test('seq', () => { + expect(ob._seq(3)).toEqual([0, 1, 2]); +});